У меня есть веб-сайт, основанный на X-Cart . Он работает нормально. Однако, когда я перехожу на адрес (вручную доступ к ссылке) www.mysite.com/"Xx<XaXaXXaXaX>xX
Я получаю это сообщение об ошибке:
INVALID SQL: 1064: у вас есть ошибка в синтаксисе SQL; проверьте руководство, соответствующее версии вашего сервера MySQL, для правильного синтаксиса для использования рядом с
' LIMIT 1' at line 1<br /><b><font color="darkred">SQL QUERY FAILURE:</font></b>SELECT xid FROM xcart_session_history WHERE ip = INET_ATON('165.193.42.141') AND host = '"XxxXx';",)
»,)' LIMIT 1' at line 1<br /><b><font color="darkred">SQL QUERY FAILURE:</font></b>SELECT xid FROM xcart_session_history WHERE ip = INET_ATON('165.193.42.141') AND host = '"XxxXx';",)
'LIMIT 1
INVALID SQL: 1064: у вас есть ошибка в синтаксисе SQL; проверьте руководство, соответствующее версии вашего сервера MySQL, для правильного синтаксиса, используемого рядом с '; ",)', 'e8bc1df13aab2c25c7560512a5029eb1')' at line 1<br /><b><font color="darkred">SQL QUERY FAILURE:</font></b>REPLACE INTO xcart_session_history (
ip,
host,
xid) VALUES (INET_ATON('165.193.42.141'), '"XxxXx';",)
',' e8bc1df13aab2c25c7560512a5029eb1 ').
Я считаю, что это уязвимость в моей системе, потому что она показывает имя таблицы и другие детали.
Я хочу, чтобы PHP / MYSQL отображал это сообщение на экране. Как я могу отключить его?
Установите $debug_mode
в config.php на 2
http://help.x-cart.com/index.php?title=X-Cart:Config.php#Correcting_debug_mode
// Отключить все отчеты об ошибках
error_reporting(0);
// Сообщаем все ошибки PHP
error_reporting(E_ALL);
// Сообщаем все ошибки PHP
error_reporting(-1);
используйте любой из них, если вы используете базу данных, затем выберите error_reporting (0)
Чтобы отключить все сообщения об ошибках:
error_reporting(0);
Вы должны установить его поверх некоторого файла заголовка, который загружается на все страницы.
error_reporting(0);
// безопаснее, а затем модифицирует файл config.php