WebClub - Всероссийский Клуб Веб-разработчиков
WebClub.RU » Советы » **Режим отладки

**Режим отладки


Дата публикации: 29-03-2008

В классе DB_Sql предусмотрен отладочный режим, который позволяет просматривать запросы, адресуемые базе данных. Для включения отладочного режима вставьте в программу инструкцию $db->Debug = true;, которая должна выполняться после создания экземпляра класса. Мы обычно определяем глобальную константу DEBUG, которую присваиваем классу DB_Sql, как показано ниже.

define("DEBUG", true);

$db->Debug = DEBUG;

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

Обработка ошибок

Библиотека PHPLib обрабатывает все ошибки, которые могут возникнуть при работе с функциями, имеющими отношение к работе с базами данных. К тому же код на основе DB_Sql обычно более компактен, так как вам не надо беспокоиться об обработке ошибок вручную.

По умолчанию при возникновении какой-либо ошибки сценарий немедленно прекращает работу. Однако данное правило умолчания можно изменить, установив соответствующее значение переменной класса $Halt_On_Error (по умолчанию она имеет значение yes). Если задать ей значение report, библиотека будет сообщать об ошибках, не выходя из сценария. Присваивание значения no приведет к игнорированию всех ошибок. Это может вызвать нежелательные побочные эффекты, например противоречивость данных, если будет проигнорирован неверный запрос к базе; поэтому данным вариантом следует пользоваться с особой осторожностью. В промышленных приложениях сообщения об ошибках должны быть информативными и выдаваться в общепринятом формате, соответствующем корпоративным требованиям к сайту. Для использования собственного формата сообщений об ошибках вы можете создать новый класс, расширив DB_Sql и заменив в нем функцию haltmsg(). Поскольку эта функция управляет выводом всех сообщений об ошибках, то проще всего установить режим выдачи сообщений следующим образом.

class test_db extends BD_Sql

{

function haltmsg($msg)

{

print("Ошибка базы данных: $msg

");

printf("Сообщение MySQL: %s

", $this->error);

}

}

За вывод сообщений об ошибках отвечает функция haltmsg(); фактически принятие решения о том, что следует сделать: прекратить выполнение сценария или попытаться преодолеть последствия ошибки, - эта функция оставляет на усмотрение библиотеки PHPLib. Данная функция выполняется только в том случае, когда переменная $Halt_On_Error имеет значения yes или report. Переменная $msg, передаваемая в качестве аргумента функции haltmsg(), содержит словесное описание ошибки. Следует также заметить, что вы можете использовать инструкции $this->Error и $this->Errno для получения сообщений об ошибках, генерируемых ядром базы данных. 

Популярное

Не так давно в сети появился новый сервис, под названием Dead Man Zero. Этот сервис сделал...
Рынок социальных площадок уже давно стал стабильным. Несмотря на то, что время от времени...
Artisteer 4 – единственный в своем роде продукт, позволяющий автоматизировать работу над созданием...
Февраль 2017 (3)
Январь 2017 (1)
Август 2016 (1)
Май 2016 (2)
Ноябрь 2015 (1)
Октябрь 2015 (1)

Карта сайта: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41

Друзья сайта

Хотите продать свой сайт?
- Мы быстро и удобно для Вас сможем его купить:
  • Заявка на продажу сайта
  • Раcсматриваем цены на каждый сайт в индивидуальном порядке.

    Случайная цитата

    Waldi Ravens:

    "Программирование на С похоже на быстрые танцы на только что отполированном полу людей с острыми бритвами в руках."

    Опрос

    Какой текстовый редактор Вы используете?

    OpenOffice
    AbiWord
    Notepad++
    UltraEdit
    PSPad
    Microsoft Office
    Microsoft Блокнот
    Другой...