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 – единственный в своем роде продукт, позволяющий автоматизировать работу над созданием...
Август 2024 (1)
Май 2024 (1)
Апрель 2024 (1)
Октябрь 2018 (14)
Февраль 2017 (3)
Январь 2017 (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

Друзья сайта



Укс-22м

укс-22м

psp-geo.ru


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

Роберт Кийосаки:

"Единственное различие между богатым и бедным человеком в том, что они делают в свободное время."

Опрос

Какими социальными сетями Вы пользуетесь?

Vkontakte.ru
Одноклассники
Мой Мир - mail.ru
Google Plus
Facebook
ЖЖ
Другие
Не пользуюсь