Ошибка Deprecated: Function eregi() is deprecated in

12 3
S
На сайте с 19.09.2013
Offline
44
2344

Ребята, на сайте joomla 1.5 при обновлении PHP на версию 5,3 возникли ошибки

Deprecated: Function eregi() is deprecated in /home2/***/public_html/***/ru/administrator/components/com_sh404sef/sh404sef.class.php on line 3182

В сети нашел что eregi необходимо заменить на preg_match, и проставить слеш... Замену производил в файле sh404sef.class.php...ничего не выходит. Может кто подскажет на ошибки...

LEOnidUKG
На сайте с 25.11.2006
Offline
1723
#1

строчку покажите а.

.ничего не выходит.

В смысле соседи не укладываются спать или вода из под крана не бежит?

✅ Мой Телеграм канал по SEO, оптимизации сайтов и серверов: https://t.me/leonidukgLIVE ✅ Качественное и рабочее размещение SEO статей СНГ и Бурж: https://getmanylinks.ru/
S
На сайте с 19.09.2013
Offline
44
#2
LEOnidUKG:
строчку покажите а.

Я вообще в том правлю файле или нет?

Вот отрывок что правил:

&& !eregi('^(([^:/?#]+):)', $newstring)

&& !eregi('this\.options\[selectedIndex\]\.value', $newstring);

//$letsGoSsl = substr($newstringSsl,0,9) == 'index.php'

// && !eregi('^(([^:/?#]+):)', $newstringSsl)

// && !eregi('this\.options\[selectedIndex\]\.value', $newstringSsl);

P
На сайте с 24.12.2010
Offline
46
#3

seoassenizator, это не ошибка по большому счету, а предупреждение о том, что в будущих версиях РНР функция eregi будет удалена.

Если ошибки/предупреждения на сайте отображаются, то это можно отключить.

Сам компонент sh404sef наверное то не последней версии установлен?

IL
На сайте с 20.04.2007
Offline
435
#4
seoassenizator:
Ребята, на сайте joomla 1.5 при обновлении PHP на версию 5,3 возникли ошибки

Вернуться на 5.2.. или обновить движок.

... :) Облачные серверы от RegRu - промокод 3F85-3D10-806D-7224 ( http://levik.info/regru )
S
На сайте с 19.09.2013
Offline
44
#5
Postfix:
Если ошибки/предупреждения на сайте отображаются, то это можно отключить.

Ошибка отображается на сайте: в шапке и на страницах сайта

Сам компонент sh404sef наверное то не последней версии установлен?

Компонент не последней версии, сайт на joomla 1.5

---------- Добавлено 05.10.2013 в 20:48 ----------

ivan-lev:
Вернуться на 5.2.. или обновить движок.

Другой вариант существует...

Владислав Приторкин
На сайте с 20.09.2013
Offline
1
#6

Не знаю, насколько правильно реализовано. нашел такую инфу

Как оказалось, разработчики PHP решили оставить директиву для включения "старых" функций, скорее всего это сделано временно, для того, чтобы все могли плавно переписать свои скрипты. Но нам необходимо, чтоб всё работало сейчас - воспользуемся этой директивой:

находим файл php.ini, а в нем строки:

; overload(replace) single byte functions by mbstring functions.

; mail(), ereg(), etc are overloaded by mb_send_mail(), mb_ereg(),

; etc. Possible values are 0,1,2,4 or combination of them.

; For example, 7 for overload everything.

; 0: No overload

; 1: Overload mail() function

; 2: Overload str*() functions

; 4: Overload ereg*() functions

;mbstring.func_overload = 0

Последняя строка - и есть наш параметр mbstring.func_overload. Раскомментируем его.

Значение параметра должно ровняться сумме чисел включаемых функций.

Например, чтоб включить функции mail() и ereg*() - необходимо вписать туда 1+4=5

Я включу все старые функции: mbstring.func_overload = 7

После сохранения файла настроек, производим перезагрузку сервера apache:

service httpd restart

siv1987
На сайте с 02.04.2009
Offline
427
#7


&& !preg_match('/^(([^:\/?#]+):)/i', $newstring)

&& !preg_match('/this\.options\[selectedIndex\]\.value/i', $newstring);
S
На сайте с 19.09.2013
Offline
44
#8
siv1987:

&& !preg_match('/^(([^:\/?#]+):)/i', $newstring)

&& !preg_match('/this\.options\[selectedIndex\]\.value/i', $newstring);

Так делал, не получилось

siv1987
На сайте с 02.04.2009
Offline
427
#9
seoassenizator:
Так делал, не получилось

Вам еще во втором сообщения сказали, что так отвечать не надо. Что значит "не получилось"? Конкретнее, со всеми данными.

S
На сайте с 19.09.2013
Offline
44
#10
siv1987:
Вам еще во втором сообщения сказали, что так отвечать не надо. Что значит "не получилось"? Конкретнее, со всеми данными.

Поменял код как вы написали выше, т.е preg_match поставил вместо eregi, ну и слешы поставил с "i"

12 3

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий