OSC — PHP 5.3 — admin/categories.php Function eregi() is deprecated

Раздел: Программирование
Написано: 26.02.2013
Автор: Antonio
Просмотров темы: 1 970 раз

После перехода на PHP 5.3 пришлось править много мест для обновления OSCommerce
в admin/categories.php

// Ultimate SEO URLs v2.1
// If the action will affect the cache entries

# было
if ( eregi("(insert|update|setflag)", $action) ) include_once('includes/reset_seo_cache.php');
# стало
if ( preg_match("/(insert|update|setflag)/i", $action) ) include_once('includes/reset_seo_cache.php');

 

Warning: syntax error, unexpected $end, expecting TC_DOLLAR_CURLY or TC_QUOTED_STRING or ‘»‘

Раздел: Программирование
Написано: 21.02.2013
Автор: Antonio
Просмотров темы: 1 521 раз

После переезда на хостинг с PHP 5.3 вылезла ошибка в админке магазина

Warning: syntax error, unexpected $end, expecting TC_DOLLAR_CURLY or TC_QUOTED_STRING or '"'
/language/en/admin/customers.ini on line 319 in
template.php on line 737
Warning: The language file customers.ini couldn't be loaded.

Решение ошибки показало что в /lib/templates/template.php используется функция parse_ini_file, которая загружает ini-файл, указанный в аргументе filename и возвращает его настройки в виде ассоциативного массива, т.е. ошибка в некорректно заполненном customers.ini, но при версии PHP 5.2 ошибка не возникала.

Продолжение “Warning: syntax error, unexpected $end, expecting TC_DOLLAR_CURLY or TC_QUOTED_STRING or ‘»‘” »

 

Ошибка Call to undefined function curl_init()

Раздел: Программирование
Написано: 14.10.2012
Автор: Antonio
Просмотров темы: 2 424 раз

Вопрос: Ошибка Call to undefined function curl_init()
Решение: на вашем хостинге не хватает модуля Curl, (в моем случае не хватало модуля php52-curl)

Если вы размещаетесь у хостера, то стоит написать письмо в техподдержку, я думаю они ответят достаточно для решения вопроса.
Продолжение “Ошибка Call to undefined function curl_init()” »

 

Deprecated: Function ereg_replace() is deprecated

Раздел: Программирование
Написано: 9.04.2012
Автор: Antonio
Просмотров темы: 8 429 раз

После перехода PHP с ветки PHP 5.2 (php52-5.2.17) на PHP 5.3 на части сайтов вылезли ошибки Deprecated: Function ereg_replace() is deprecated, хорошо что первоначальный переход я начал на тестовом сервере и было время подготовится, оценить размеры работ для корректного перехода уже на рабочем сервере.

php

И так, в ветки PHP 5.3 начали борьбу с некоторыми старыми функциями, для начала они выводят предупреждение и сообщают что функция уже не поддерживается и в будущем будет вообще удалена. Но в версии 5.3 еще можно избежать проблем включив режим поддержки старых функций

Продолжение “Deprecated: Function ereg_replace() is deprecated” »

 

Warning: date() [function.date]:

Раздел: Программирование
Написано: 9.04.2012
Автор: Antonio
Просмотров темы: 1 803 раз

При переходе на PHP 5.3 на сайте вылезли предупреждения Warning: date() [function.date]:

Решение: в настройках php.ini необходимо установить часовой пояс, это делается в файле php.ini (для FreeBSD по-умолчанию он находится тут /usr/local/etc/php.ini)
Добавляем в раздел Date часовую зону, взять подходящую можно тут

В моем случае это выглядит так:

[Date]
date.timezone = Europe/Kiev



Копирование информации с сайта возможно только с указанием прямой ссылки - https://nemcd.com