0 Пользователей и 1 Гость просматривают эту тему.
  • 4 Ответов
  • 12667 Просмотров
*

gorunov

  • Осваиваюсь на форуме
  • 27
  • 11
Уже многие заметили, что при переходе хостеров на PHP 5.3.3 упали сайты на Joomla 1.0.х.
И так, начинаем лечить:

1. Конечно же в первую очередь нужно вылечить com_content, чтобы отображались материалы. Для этого:

В файлике /includes/Cache/Lite/Function.php   находим строчку

Код
$arguments = func_get_args();

и заменяем её на

Код
$arguments = func_get_args();
$numargs = func_num_args();
for($i=1; $i < $numargs; $i++){
$arguments[$i] = &$arguments[$i];
}

Для ленивых уже пропатченый файл [ссылка]

2. Лечим com_contact. Для этого:

находим файл /includes/vcard.class.php и внем ф-ию

Код
  function quoted_printable_encode($input, $line_max=76, $space_conv=false)
  {
    /* ... */
  }

заменяем на

Код
if(!function_exists('quoted_printable_encode'))
{
  function quoted_printable_encode($input, $line_max=76, $space_conv=false)
  {
    /* ... */
  }
}

Для ленивых уже пропатченый файл [ссылка]


3. Решение проблем с ereg*()

В PHP 5.3.3 были депрекнуты (больше не поддерживаются)  функции ereg*()
Если вы в конфиге включите error_reporting нарпимер на max левел, то увидите множество сообщений типа

Deprecated: Function eregi() is deprecated in /home/siteroot/....

Ман по этой проблеме можете прочитать здесь: [ссылка]

В кратце, решение проблема с ereg*() заключается в замене этой функции на preg_match() по следующим алгоритмам:

Код
ereg("\.([^\.]*$)", $this->file_src_name, $extension);
заменить на
preg_match("/\.([^\.]*$)/", $this->file_src_name, $extension);


$this->file_dst_name_body = ereg_replace("[^A-Za-z0-9_]", "", $this->file_dst_name_body);
заменить на
$this->file_dst_name_body = preg_replace("/[^A-Za-z0-9_]/", "", $this->file_dst_name_body);

eregi("\.([^\.]*$)", $this->file_src_name, $extension);
заменить на
preg_match("/\.([^\.]*$)/i", $this->file_src_name, $extension);

split (string pattern, string string [, int limit])
заменить на
preg_split ( string pattern, string subject [, int limit [, int flags]] )

NB: первый аргумент (паттерн) почти всегда должен начинаться  и заканчиваться на "/"

P.S. Переходите на Joomla 1.5


« Последнее редактирование: 10.11.2010, 14:23:32 от gorunov »
*

gorunov

  • Осваиваюсь на форуме
  • 27
  • 11
Понемножку фиксим проблемму с ereg*

1. Начнем с ядра /includes/joomla.php

Строку:
   
Код
if ( $date && ereg( "([0-9]{4})-([0-9]{2})-([0-9]{2})[ ]([0-9]{2}):([0-9]{2}):([0-9]{2})", $date, $regs ) ) {

заменяем на

 
Код
      if ( $date && preg_match( "/([0-9]{4})-([0-9]{2})-([0-9]{2})[ ]([0-9]{2}):([0-9]{2}):([0-9]{2})/", $date, $regs ) ) {	
*

Aleks_El_Dia

  • Moderator
  • 3742
  • 353
  • AEDStudio Joomla! Direction
Здесь немного расширенная статья с несколькими решениями - Совместимость Joomla 1.0 и PHP 5.3
Спам придумали боги в отместку за наши молитвы (с) Рома Воронежский
На молоко: Z369038872422 || R210017695494 || U247040729215 || ЯД 410011288250383
Мигрирую сайты, переношу расширения J!1.0->J!1.5->J!2.5. Более 50 успешных миграций.
*

SK

  • Практически профи
  • 2141
  • 161
Когда сам столкнулся с проблемой совместимости 1.0 и 5.3.3, помучился-помучился, плюнул и перешел на версию php5.2.9.
И ни каких проблем с работой Joomla 1.0
*

dusha

  • Осваиваюсь на форуме
  • 30
  • 1
Тоже теперь мучаюсь... Регистер глобалс и мэйджик квотс из хтакцесса убрал, пробую сунуть в корень PHP.ини - сайт вообще вылетает, будь там даже пустой PHP.ини...
Сейчас не рабоатет VirtueMart, не удается загрузить товар...
*****************************
После добвления таймзона в конфиг заработал PHP.ини !

Как заставить работать VirtueMart - теперь вопрос... Разбираюсь дальше, пока трабл Warning: fgetcsv() [function.fgetcsv]:
« Последнее редактирование: 06.06.2013, 12:35:45 от dusha »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Восстановление пункта меню админки в Joomla 1.0.15

Автор Vicom

Ответов: 0
Просмотров: 2088
Последний ответ 15.07.2017, 11:36:04
от Vicom
Как убрать цикличиские ссылки Joomla 1.0?

Автор p4o1

Ответов: 3
Просмотров: 1129
Последний ответ 12.03.2016, 11:18:40
от SeBun
сколько стоит обновить Joomla 1 на Joomla 3* нужна помощь

Автор zvi

Ответов: 10
Просмотров: 1285
Последний ответ 16.02.2016, 11:12:47
от zvi
Миграция с Joomla 1.0.x на Joomla 1.5.x (mtwmigrator)

Автор spot

Ответов: 358
Просмотров: 211665
Последний ответ 30.04.2015, 01:55:48
от Aleks_El_Dia
Joomla и TopServer 2.1

Автор frimen

Ответов: 3
Просмотров: 7725
Последний ответ 25.02.2015, 20:28:30
от m1