1

Тема: Ошибка после комментария одной статьи

Привет форум,

у меня такая проблема возникла. Я оставил мой первый комменатарий вот к этой статье и потом вышла ошибка вот эта

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /www/htdocs/w011cb04/s2cms/_include/comments.php on line 253

Warning: Cannot modify header information - headers already sent by (output started at /www/htdocs/w011cb04/s2cms/_include/comments.php:253) in /www/htdocs/w011cb04/s2cms/_include/functions.php on line 606

Warning: Cannot modify header information - headers already sent by (output started at /www/htdocs/w011cb04/s2cms/_include/comments.php:253) in /www/htdocs/w011cb04/s2cms/_include/functions.php on line 607

Как это обяснить и что мне нужно предпринять??

2

Re: Ошибка после комментария одной статьи

В бэкэнде блога в опциях комментариев у последних комментариев тоже ошибка и связана с comments.php.

В строчке 253 стоит это:

$s = preg_replace('#(https?://\S{2,}?)(?=[\s\),\'\><\]]|&lt;|&gt;|[\.;:](?:\s|$)|$)#ue', '\'<noindex><a href="\\1" rel="nofollow">\'.((utf8_strlen(\'\\1\') > 55) ? utf8_substr(\'\\1\', 0 , 42).\' … \'.utf8_substr(\'\\1\', -10) : \'\\1\').\'</a></noindex>\'', $s);

3

Re: Ошибка после комментария одной статьи

Поиск по ошибке показал, что в PHP версии 5.5 часть функций объявлена устаревшими - deprecated (в частности, модификатор /e в preg_replace()):

http://www.php.net/manual/ru/migration55.deprecated.php

На вашем сайте вы можете отключить вывод deprecated-ошибок через php.ini, или добавив следующую строчку в config.php:

error_reporting(error_reporting() & (-1 ^ E_DEPRECATED));

В следующей версии я перепишу этот фрагмент кода.

4

Re: Ошибка после комментария одной статьи

Спасибо за быстрый ответ, Роман! Я эту строчку добавил в и всё равно ошибка показывается. Не могу понять почему!?

Доступа к php.ini у меня к сожалению нет. Но если ты говоришь, что с config.php тоже получится, то должно, но у меня и идёт.

5

Re: Ошибка после комментария одной статьи

Тогда проще всего закомментировать или удалить строчку, на которой возникает ошибка:

http://s2cms.ru/trac/browser/trunk/_inc … s.php#L253

Она отвечает за оборачивание ссылок в комментариях в тег <noindex>, ее отсутствие не критично.