SaVGrouP » Хаки для DLE » Бесплатные хаки для DLE » MySQL ошибка (вывод информации)
Информация к новости
  • Просмотров: 2397
  • Автор: ShapeShifter
  • Дата: 4 марта 2010
 (голосов: 3)
4 марта 2010

MySQL ошибка (вывод информации)

Категория: Хаки для DLE » Бесплатные хаки для DLE

MySQL ошибка (вывод информации)

Вот давно хотел изменить вывод MySQL ошибок на своём сайте, чтобы пользователи могли четко сообщить о найденной ошибке.
Обычно просто пишут, что была ошибка БД или копируют какую-то часть текста и передают администрации, что не позволяет быстро понять в чём проблема и где она появляется.

Данный хак позволит сделать более удобный вывод ошибок на вашем сайте. Например вы можете просто изменить внешний вид вывода ошибки или написать информацию, благодаря которой пользователи будут знать кому и что сообщить (как сделал я).

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

Открыть /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.

Внимание! В инструкции вывод информации отличается от того что на скриншоте.

Автор: ShapeShifter (SaVGroup.ru)
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.
<
Music-life

4 марта 2010 22:38

Информация к комментарию
  • Группа: Посетители
  • ICQ: --
  • Репутация: (0|0)
  • Регистрация: 1.02.2010
  • Публикаций: 0
  • Комментариев: 6
Замечательная идея,спасибо.
<
PaSSoR

5 марта 2010 10:58

Информация к комментарию
  • Группа: Клиенты
  • ICQ: --
  • Репутация: (0|0)
  • Регистрация: 4.03.2010
  • Публикаций: 0
  • Комментариев: 21
lol Великолепно...возможно буду использовать!


-----------------------
Статус: SaVGroup лучшие! :: Изменён: 28 августа 2010
--------------------

<
hit432

25 августа 2010 11:26

Информация к комментарию
  • Группа: Посетители
  • ICQ: --
  • Репутация: (0|0)
  • Регистрация: 25.08.2010
  • Публикаций: 0
  • Комментариев: 1
Да, очень неплохая идейка, надо бы заюзать на своем сайте.
<
dmit

18 февраля 2011 14:12

Информация к комментарию
  • Группа: Клиенты
  • ICQ: 374399318
  • Репутация: (0|0)
  • Регистрация: 30.01.2011
  • Публикаций: 0
  • Комментариев: 3
Есть идейка получше: сделать автоматическую отправку сообщений об ошибке, ну скажем на e-mail, или в ПС, или в ....аську ))
<
ShapeShifter

20 февраля 2011 20:41

Информация к комментарию
  • Группа: Администраторы
  • ICQ: 10280282
  • Репутация: (38|-1)
  • Регистрация: 17.10.2009
  • Публикаций: 60
  • Комментариев: 233
dmit, с одной стороны это хорошо, но, что если ваш сайт посещают по 10-300 онлайн? Сколько писем будет на почте)


-----------------------
Статус: LogicBoard.ru - движок форума :: Изменён: 12 января 2011
--------------------

<
Sm0k1

21 июля 2011 10:45

Информация к комментарию
  • Группа: Посетители
  • ICQ: --
  • Репутация: (0|0)
  • Регистрация: 2.01.2011
  • Публикаций: 0
  • Комментариев: 2
Спасибо
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.
 
Скачать бесплатно порнуху онлайн. Бесплатная порнуха картинки негритянок.