Тази статия е огледална статия за машинен превод, моля, кликнете тук, за да преминете към оригиналната статия.

Изглед: 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 с заявки за бисквитки сесии?
Следващ:След стартиране на X3.2, PHP лог подканване: PHP Strict Standards
Отричане:
Целият софтуер, програмни материали или статии, публикувани от Code Farmer Network, са само за учебни и изследователски цели; Горното съдържание не трябва да се използва за търговски или незаконни цели, в противен случай потребителите ще понесат всички последствия. Информацията на този сайт идва от интернет, а споровете за авторски права нямат нищо общо с този сайт. Трябва напълно да изтриете горното съдържание от компютъра си в рамките на 24 часа след изтеглянето. Ако ви харесва програмата, моля, подкрепете оригинален софтуер, купете регистрация и получете по-добри услуги. Ако има нарушение, моля, свържете се с нас по имейл.

Mail To:help@itsvse.com