Эта статья является зеркальной статьёй машинного перевода, пожалуйста, нажмите здесь, чтобы перейти к оригиналу.

Вид: 14308|Ответ: 0

[Сайт O&M] Исправлена ошибка в RSS-выходе после обновления Discuz X3.2

[Скопировать ссылку]
Опубликовано 27.04.2016 10:48:13 | | |
Не знаю, может ли это быть багом программы
PHP error_log файл журнала ошибок — это очень много G.
Блокнот открывается вот так

[06-нояб-2015 12:40:26 и так далее/GMT-8] PHP Устарело: mysql_escape_string(): Эта функция устарела; Используйте mysql_real_escape_string() вместо этого. в D:\127.0.0.1\source\class\discuz\discuz_database.php на строке 177
[06-нояб-2015 12:40:26 и так далее/GMT-8] PHP Устарело: mysql_escape_string(): Эта функция устарела; Используйте mysql_real_escape_string() вместо этого. в D:\127.0.0.1\source\class\discuz\discuz_database.php на строке 177
[06-нояб-2015 12:40:26 и так далее/GMT-8] PHP Устарело: mysql_escape_string(): Эта функция устарела; Используйте mysql_real_escape_string() вместо этого. в D:\127.0.0.1\source\class\discuz\discuz_database.php на строке 177
[06-нояб-2015 12:40:26 и так далее/GMT-8] PHP Устарело: mysql_escape_string(): Эта функция устарела; Используйте mysql_real_escape_string() вместо этого. в D:\127.0.0.1\source\class\discuz\discuz_database.php на строке 177
[06-нояб-2015 12:40:26 и так далее/GMT-8] PHP Устарело: mysql_escape_string(): Эта функция устарела; Используйте mysql_real_escape_string() вместо этого. в D:\127.0.0.1\source\class\discuz\discuz_database.php на строке 177
[06-нояб-2015 12:40:26 и так далее/GMT-8] PHP Устарело: mysql_escape_string(): Эта функция устарела; Используйте mysql_real_escape_string() вместо этого. в D:\source\class\discuz\discuz_database.php на строке 177
[06-нояб-2015 12:40:26 и так далее/GMT-8] PHP Устарело: mysql_escape_string(): Эта функция устарела; Используйте mysql_real_escape_string() вместо этого. в D:\127.0.0.1\source\class\discuz\discuz_database.php на строке 177
[06-нояб-2015 12:40:26 и так далее/GMT-8] PHP Устарело: mysql_escape_string(): Эта функция устарела; Используйте mysql_real_escape_string() вместо этого. в D:\127.0.0.1\source\class\discuz\discuz_database.php на строке 177
[06-нояб-2015 12:40:26 и так далее/GMT-8] PHP Устарело: mysql_escape_string(): Эта функция устарела; Используйте mysql_real_escape_string() вместо этого. в D:\source\class\discuz\discuz_database.php на строке 177
[06-нояб-2015 12:40:26 и так далее/GMT-8] PHP Устарело: mysql_escape_string(): Эта функция устарела; Используйте mysql_real_escape_string() вместо этого. в D:\127.0.0.1\source\class\discuz\discuz_database.php на строке 177
[06-нояб-2015 12:40:26 и так далее/GMT-8] PHP Устарело: mysql_escape_string(): Эта функция устарела; Используйте mysql_real_escape_string() вместо этого. в D:\127.0.0.1\source\class\discuz\discuz_database.php на строке 177
[06-нояб-2015 12:40:26 и так далее/GMT-8] PHP Устарело: mysql_escape_string(): Эта функция устарела; Используйте mysql_real_escape_string() вместо этого. в D:\127.0.0.1\source\class\discuz\discuz_database.php на строке 177
[06-нояб-2015 12:40:26 и так далее/GMT-8] PHP Устарело: mysql_escape_string(): Эта функция устарела; Используйте mysql_real_escape_string() вместо этого. в D:\source\class\discuz\discuz_database.php на строке 177
[06-нояб-2015 12:40:26 и так далее/GMT-8] PHP Устарело: mysql_escape_string(): Эта функция устарела; Используйте mysql_real_escape_string() вместо этого. в D:\127.0.0.1\source\class\discuz\discuz_database.php на строке 177
[06-нояб-2015 12:40:26 и так далее/GMT-8] PHP Устарело: mysql_escape_string(): Эта функция устарела; Используйте mysql_real_escape_string() вместо этого. в D:\127.0.0.1\source\class\discuz\discuz_database.php на строке 177
[06-нояб-2015 12:40:26 и так далее/GMT-8] PHP Устарело: mysql_escape_string(): Эта функция устарела; Используйте mysql_real_escape_string() вместо этого. в D:\127.0.0.1\source\class\discuz\discuz_database.php на строке 177
[06-нояб-2015 12:40:26 и так далее/GMT-8] PHP Устарело: mysql_escape_string(): Эта функция устарела; Используйте mysql_real_escape_string() вместо этого. в D:\127.0.0.1\source\class\discuz\discuz_database.php на строке 177
[06-нояб-2015 12:40:26 и так далее/GMT-8] PHP Устарело: mysql_escape_string(): Эта функция устарела; Используйте mysql_real_escape_string() вместо этого. в D:\127.0.0.1\source\class\discuz\discuz_database.php на строке 177


Discuz X3.2 имеет аномальный RSS-выход после обновления до версии 20141225. Код ошибки следующий:

Ошибка XML-разбора: синтаксисическая ошибка
Местоположение: http://www.xxx.com/forum.php?mod=rss
Строка 2, Столбец 1: Устарело: mysql_escape_string(): Эта функция устарела; Используйте mysql_real_escape_string() вместо этого. в /xxx/xxx/xxx/source/class/discuz/discuz_database.php на строке 177

Причина ошибки в том, что используется устаревшая функция PHP. Очевидно, что патч Discuz не тестировался после завершения разработки, даже официальный сайт не включил RSS-выход, и я даже сомневаюсь, что у разработчика есть реальный уровень.


Этот код ошибки запускается только в Firefox, и как IE, так и Chrome сообщают об ошибке без кода ошибки.

Метод исправления тоже очень прост: просто замените функцию mysql_escape_string() в строке 177 discuz_database.php на mysql_real_escape_string().






Предыдущий:Поставляется ли jquery ajax с запросами на сессию cookie?
Следующий:После запуска X3.2 в PHP появляются запросы: PHP Strict Standards
Отказ:
Всё программное обеспечение, программные материалы или статьи, публикуемые Code Farmer Network, предназначены исключительно для учебных и исследовательских целей; Вышеуказанный контент не должен использоваться в коммерческих или незаконных целях, иначе пользователи несут все последствия. Информация на этом сайте взята из Интернета, и споры по авторским правам не имеют отношения к этому сайту. Вы должны полностью удалить вышеуказанный контент с компьютера в течение 24 часов после загрузки. Если вам нравится программа, пожалуйста, поддержите подлинное программное обеспечение, купите регистрацию и получите лучшие подлинные услуги. Если есть нарушение, пожалуйста, свяжитесь с нами по электронной почте.

Mail To:help@itsvse.com