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

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

Чтобы посетитель мог быстро исправить допущенные ошибки, от него требуется не только внимание и терпение. В ответ на некорректный ввод данных сайт должен выдать понятное сообщение. Обычно обработку ошибок возлагают на программистов. Им говорят: «Напишите нужный код», но не объясняют, как лучше это сделать. Получив такую сухую инструкцию, разработчик выполнит ее, как может: точно, аккуратно и с минимальными усилиями. В результате сообщение об ошибке, которое появится перед пользователем, может быть совершенно ему непонятным.

Вам, наверное, приходилось сталкиваться с подобным: вы заполнили форму, нажали кнопку «Отправить» и получили взамен жуткую страницу с сообщением об ошибке. На ней нет никакой дополнительной информации. А вдруг вы допустили несколько ошибок? Исправив одну из них, вы снова попадете на эту страшную страницу. Как будто нельзя написать обо всех ошибках сразу, чтобы избежать необходимости исправлять каждую из них по отдельности.

Ошибки при вводе бывают двух видов:

1. пропущено поле, обязательное для заполнения;

2. тип или формат данных не соответствуют требованиям.

В первом случае речь идет о тех сведениях, которые вам необходимы. Например, в форме оформления подписки обязательно нужно указать адрес электронной почты.

Во втором случае ошибка появляется, если у введенных данных неправильный тип или формат. Например, в поле для адреса электронной почты клиенту не позволяют ввести номер телефона.

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

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

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

Обработка ошибок на стороне сервера дает больше возможностей, здесь не возникает никаких проблем совместимости. Однако при этом данные совершают несколько кругов от компьютера пользователя к серверу и обратно. К тому же, проверить форму на ошибки можно только после нажатия кнопки «Отправить».

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг

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

Из книги C++ автора Хилл Мюррей

3.1.4 Обработка ошибок Поскольку программа так проста, обработка ошибок не сотавляет большого труда. Функция обработки ошибок просто счтает ошибки, пишет сообщение об ошибке и возвращает управлние обратно:int no_of_errors;double error(char* s) (* cerr «„ "error: " «« s «« « “; no_of_errors++; return 1;


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

Из книги UNIX: взаимодействие процессов автора Стивенс Уильям Ричард

7.3.4 Обработка Ошибок Есть четыре подхода к проблеме, что же делать, когда во время выполнения универсальное средство вроде slist сталкивется с ошибкой (в С++ нет никаких специальных средств языка для обработки ошибок):1. Возвращать недопустимое значение и позволить


1.6. Обработка ошибок: функции-обертки

Из книги Системное программирование в среде Windows автора Харт Джонсон М

1.6. Обработка ошибок: функции-обертки В любой реальной программе при любом вызове требуется проверка возвращаемого значения на наличие ошибки. Поскольку обычно работа программ при возникновении ошибок завершается, мы можем сократить объем текста, определив


Пример: обработка ошибок

Из книги Добавьте в корзину. Ключевые принципы повышения конверсии веб-сайтов автора Айзенберг Джеффри

Пример: обработка ошибок В программе 1.2 было продемонстрировано использование лишь самых примитивных средств обработки ошибок, а именно, получение номера ошибки в переменной типа DWORD с помощью функции GetLastError. Вызов функции, а не просто получение глобального номера


Пример: обработка ошибок как исключений

Из книги Стандарты программирования на С++. 101 правило и рекомендация автора Александреску Андрей

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


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

Из книги Справочник по PHP автора

Обработка ошибок Чтобы посетитель мог быстро исправить допущенные ошибки, от него требуется не только внимание и терпение. В ответ на некорректный ввод данных сайт должен выдать понятное сообщение. Обычно обработку ошибок возлагают на программистов. Им говорят:


Обработка ошибок и исключения

Из книги XSLT автора Хольцнер Стивен

Обработка ошибок и исключения Обработка ошибок — сложная задача, при решении которой программисту требуется вся помощь, которая только может быть предоставлена. — Бьярн Страуструп (Bjarne Stroustrup), [Stroustrup94] §16.2 Имеется три способа написать программу без ошибок; но работает


Отслеживание и обработка ошибок

Из книги Разработка приложений в среде Linux. Второе издание автора Джонсон Майкл К.

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


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

Из книги Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ автора Борри Хелен

26.4. Обработка ошибок Каждая из функций popt, которая может возвращать ошибки, возвращает целочисленные значения. В случае возникновения ошибки возвращается отрицательный код. В табл. 26.2 перечислены коды возможных ошибок. После таблицы дается подробное обсуждение каждой


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

Из книги Мир InterBase. Архитектура, администрирование и разработка приложений баз данных в InterBase/FireBird/Yaffil автора Ковязин Алексей Николаевич

Обработка ошибок Из-за ограниченного объема главы я не могу подробно остановиться на рассмотрении такого чрезвычайно важного вопроса, как обработка ошибок. Однако очень важно включить код обработки ошибок в каждую процедуру базы данных. Подробные сведения о написании


ГЛАВА 32. Обработка ошибок и события.

Из книги Операционная система UNIX автора Робачевский Андрей М.

ГЛАВА 32. Обработка ошибок и события. В этой главе мы рассмотрим, как при выполнении модулей PSQL - триггеров и процедур - можно перехватывать и обрабатывать ошибки в выполняемом коде.Стандартным поведением модулей PSQL при появлении исключений является остановка выполнения,


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

Из книги автора

Обработка ошибок В предыдущем разделе мы обсудили разницу между системными вызовами и библиотечными функциями. Они также различаются по способу передачи процессу информации об ошибке, произошедшей во время выполнения системного вызова или функции библиотеки.Обычно в


1.4. Обработка ошибок: функции-обертки

Из книги автора

1.4. Обработка ошибок: функции-обертки В любой реальной программе существенным моментом является проверка каждого вызова функции на предмет возвращаемой ошибки. В листинге 1.1 мы проводим поиск ошибок в вызовах функций socket, inet_pton, connect, read и fputs, и когда ошибка случается, мы