Подскажите что за ошибка Deprecated: Function eregi() is deprecated in

TAKOY

Постоялец
Регистрация
24 Фев 2008
Сообщения
84
Реакции
5
Доброго времени суток.
Уважаемые програмисты, в пхп я нибумбум, пару дней назад вылезла ошибка, сразу скажу, что сайт с сайтом никаких работ не вели, кроме добавления новостей, так вот, такая ошибка -
Deprecated: Function eregi() is deprecated in /home/polyno/public_html/oshibochko.ru/modules/mod_yj_ns10/mod_yj_ns10.php on line 59

вот сайт

вот кусок кода из фала на который ругается ошибка) -


59 if(eregi("MSIE 6.0", $who)) {
60 $document->addStyleSheet(JURI::base() . 61'modules/mod_yj_ns1061 /css/ifie.php');
62 $document->addCustomTag('

что не так? ведь неделю назад все было в порядке, на хосте несколько сайтов на разных движках, так вот на трети сайтов повылазили разные ошибки, а на других нет ошибок, дал запрос хостингу в службу поддержки , пока молчат, хостинг
Заранее спасибо.
 
В РНР5 функция eregi()считается морально устаревшей... решения 2
1)рекомендованое... заменить другими функциями типа preg_replace()
2) ковырнуть php.ini
 
замени кусок кода:
PHP:
if(eregi("MSIE 6.0", $who)) {

на такой:
PHP:
if(strpos(strtolower($who), "msie 6.0") !== false) {
 
Все решилось)!!!
Значит вопервых спасибо dino, я вчера еще начал по его подсказке пробовть менять функции, но когда менял просто eregi на preg_replace то вылазила уже новая ошибка такая - Warning: preg_replace() expects at least 3 parameters, 2 given in /home/polyno/public_html/oshibochko.ru/modules/mod_yj_ns10/mod_yj_ns10.php on line 59 , и пошел я гуглить, но вчера уже надоело это все и после нескольких изменений по примерам из гугла я послал все нахер)
Сегодня с утра сразу за ту ошибку вспомнил и опять в гугл, и оказывается все гениальное - просто! Значит опять пару изменений ни к чему не привели, но случайно нашел страничку где описывалась такая проблема , там некий tommyangelo лаконично написал ответ, дословно так - "/chrome/" , а так как у меня в моей 59 строчке речь шла о ie6, то я попробовал тоже взять и поставь такие наклонніе и получилось так if(preg_match("/MSIE 6.0/", $who)) { -ошибка исчезла!

Ну и зашел на нулед отписать ответ, а здесь -=Xardas=- тоже дает совет, уже готовый и попробовал и так еще сделать , и ошибка тоже исчезла, поэтому есть два решения либо меняем eregi на preg_replace и берем ie6 в наклонные, или меняем полность строчку как советует -=Xardas=-.
Всем спасибо за внимание.

Да еще, в футере сайта эта строчка - Использование материалов oshibochko.ru разрешается при условии ссылки (для интернет-изданий - гиперссылки на oshibochko.ru после изменений на хостинге стала отображаться в впоросительных знаках, хотя как я уже говорил никаких изменений в шаблоне не делал, я менял кодировку , убирал строчку и поновой ставил - ничего не помогает, может с этим тоже ктото поможет?
 
Все решилось)!!!
Да еще, в футере сайта эта строчка - Использование материалов oshibochko.ru разрешается при условии ссылки (для интернет-изданий - гиперссылки на oshibochko.ru после изменений на хостинге стала отображаться в впоросительных знаках, хотя как я уже говорил никаких изменений в шаблоне не делал, я менял кодировку , убирал строчку и поновой ставил - ничего не помогает, может с этим тоже ктото поможет?
Проверь в какой кодировке сохранен сам файл, в котором забита данная строка (UTF8 c bom, UTF8 без bom, ANSI... )и поэкспериментируй, сохраняя файл в разных кодировках (можно делать в notepad++ или любом другом редакторе )
 
А вот и техподдержка хостинга проснулась, но еслибы общими усилиями не решили проблему мою, онибы тоже не решили, ну решилибы, но временно. Вот их ответ -
Ваши скрипты не поддерживают новую версию php 5.3.8 есть 2 решения:
1.Вы обновляете скрипты до поддержки данной php.
2. Мы переносим ваш счет на другой сервер где не будет меняться версия php, но вам необходимо будет изменить DNS во всех доменах.

Что вы выбираете?

Спасибо вам и за такое решение)))

Да, а кодировку попробовал поставить утф8 без бом и все нормально отображается.
Спасибо дино, спасибо нулед)))
 
лучше stristr($who, 'msie 6.0'), чем strpos($who, 'msie 6.0'). имхо.
 
Назад
Сверху