|
Содержание | | | | |  | | | |
|
Партнеры и друзья | | | | |  | | | |
|
Быстрый переход | | | | |  | | | |
| | Обработка ошибок заполнения Html-формНа любом современном сайте используются всевозможные HTML-формы, которые пользователь должен заполнить и отправить данные на сервер. Это может быть гостевая книга, форум, форма обратной связи, подписка на рассылку и т.д.
Данные, вводимые пользователем в форму и отправляемые в файл-обработчик, необходимо проверять на корректность. Например email обязательно должен содержать символ @, быть по длине не менее 8 символов, есть также регулярное выражение, по которому можно проверить данные на предмет соответствия адресу электронной почты.
Встает вопрос, как проинформировать пользователя о том, что он неправильно ввел данные?
Один из вариантов решения этой проблемы - через сессионные переменные.
Пусть есть страница form.php, на которой расположена наша форма, и есть файл send.php, который является обработчиком данных формы в файле form.php.
В обоих файлах должна быть запущена сессия функцией session_start() в начале сценария до отправки заголовков документа.
Пусть отправляется переменная email методом POST:
в файле send.php осуществляем проверку на длину:
if(strlen($_POST["email"])<8){
$_SESSION["error"]="Короткий адрес электронной почты";
header("Location: form.php");
exit;
}
Соответственно в файле form.php перед формой прописываем следующее:
if(!empty($_SESSION["error"])){
$error=$_SESSION["error"];
unset($_SESSION["error"]);
}else{
$error="";
}
echo $error;
Соответственно, если ошибка была, то она будет напечатана пользователю перед формой. Таким же методом можно сохранять данные в заполненных полях формы, чтобы пользователь по несколько раз не вводил одно и то же.
Дата публикации: 2009-01-09 Смотрите также: - Реализация ЧПУ(несуществующие страницы) - загрузка больших файлов через HTML-форму
Комментарии:
| |
|
Самые читаемые: | | | | |  | | | |
|
Лучшие фото: | | | | |  | | | |
|