
Оформить вывод MySQL ошибок на своём сайте, а также сделать так, чтобы пользователи могли сообщить Вам на E-mail почту о найденной ошибке или о не работающем сайте можно реализовать с помощью данного хака дле. Пользователи могут написать, что произошла ошибка БД или копируют какую-то часть текста, после отправляют администрации, это позволяет своевременно узнать об нерабочем сайте и принять нужные меры, а также узнать в чём проблема и где она появляется.
Данный хак для dle позволит сделать более удобный вывод ошибок на вашем сайте. Например так же вы сами можете оформить внешний вид вывода ошибки или написать информацию, благодаря которой пользователи будут знать кому и что сообщить.
Хак для вывода информации об ошибке MySQL для DLE
Итак установка:
Открыть /engine/classes/mysqli.class.php и mysql.class.php
Найти:
function display_error($error, $error_num, $query = '') { if($query) { // Safify query $query = preg_replace("/([0-9a-f]){32}/", "********************************", $query); // Hides all hashes $query_str = "$query"; } echo '<?xml version="1.0" encoding="iso-8859-1"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>MySQL Fatal Error</title> <meta http-equiv="Content-Type" content="text/html; charset=windows-1251" /> <style type="text/css"> <!-- body { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10px; font-style: normal; color: #000000; } --> </style> </head> <body> <font size="4">MySQL Error!</font> <br />------------------------<br /> <br /> <u>The Error returned was:</u> <br /> <strong>'.$error.'</strong> <br /><br /> </strong><u>Error Number:</u> <br /> <strong>'.$error_num.'</strong> <br /> <br /> <textarea name="" rows="10" cols="52" wrap="virtual">'.$query_str.'</textarea><br /> </body> </html>'; exit(); }
Заменить на:
function display_error($error, $error_num, $query = '') { if($query) { // Safify query $query = preg_replace("/([0-9a-f]){32}/", "********************************", $query); // Hides all hashes $query_str = "$query"; } echo '<?xml version="1.0" encoding="iso-8859-1"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>MySQL Fatal Error</title> <meta http-equiv="Content-Type" content="text/html; charset=windows-1251" /> <style type="text/css"> <!-- body { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10px; font-style: normal; color: #000000; } --> </style> </head> <body> <font size="4">MySQL ошибка!</font> <br />------------------------<br /> <br /> <u>Причина ошибки:</u> <br /> <strong>'.$error.'</strong> <br /><br /> </strong><u>Номер ошибки:</u> <br /> <strong>'.$error_num.'</strong> <br /> <br /> <u>Просьба сообщить об ошибке:</u> <br /> <strong>ВАША ПОЧТА или по личным сообщениям через сайт.</strong><br> Скопируйте весь текст, который написан ниже и отправьте его по указанным контактам. <br /><br /> <textarea name="" rows="10" cols="52" wrap="virtual">'.$query_str.'</textarea><br /><br>Заранее спасибо, за уведомление об ошибки. Мы постараемся исправить её как можно быстрее. </body> </html>'; exit(); }
Всё что находится между:
echo '
а также
';
Это формирование страницы с ошибкой MySQL.

Рекомендуем скачать хак для DLE вывода информации об ошибке MySQL
Комментарии 1