- Обязательные поля для заполнения
- Php обязательное заполнение полей
- Синтаксис required
- Значения required
- Значение по умолчанию required
- Пример использования required
- Пример кода формы с использованием required
- Выведем форму с обязательными полями с использованием required
- Проверка полей на обязательное заполнение в php
- PHP5 Поля форм
- PHP Обязательные поля ввода
- PHP Отображение cообщений об ошибках
- Пример
- PHP Формы — обязательные поля
- PHP — Обязательные поля
- PHP — Показать сообщения об ошибках
- Пример
Обязательные поля для заполнения
Доброй ночи! Помогите пожалуйста исправить код в скрипте обратной связи, а именно допилить обязательные поля для заполнения. Когда тыкают на отправить, у меня отправляется сообщение не имея значение что там, даже если поля пустые. А нужно сделать обязательные поля для заполнения. Что бы когда тыкают отправить, а поля обязательные не заполнены, то что бы данные не отправлялись, а там где нужно дописать инфу, показывало «вы не заполнили обязателное поле», а когда все ОК и все поля заполнены, то тогда можно отправить. Я думаю смысл понятен. Помогите пожалуйста. Вот код в html и обработчик:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
form id="form" action="../send.php" method="post"> fieldset> p class="first"> label for="name">Имя span class="colortext">*/span>/label> input type="text" name="name" id="name" size="30" /> /p> p> label for="email">Email span class="colortext">*/span>/label> input type="text" name="email" id="email" size="30" /> /p> p> label for="tel">Контактный номер span class="colortext">*/span>/label> input type="text" name="tel" id="tel" size="30" /> /p> /fieldset> fieldset> p> label for="message">Сообщение:/label> textarea name="message" id="message" cols="30" rows="10">/textarea> /p> /fieldset> p class="submit">button type="submit">Заказать звонок/button>/p> /form> /div>
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 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61
$name = $_POST['name']; $email = $_POST['email']; $telef = $_POST['tel']; $mess = $_POST['message']; $REMOTE_ADDR = $_POST['REMOTE_ADDR']; $to = "мыло"; $subject = "Сообщение с сайта"; $message = "\n Имя пославшего письмо: $name.\n Электронный адрес: $email \n Номер телефона: $telef \n Сообщение: $mess .\n IP-адрес: $_SERVER[REMOTE_ADDR]"; mail ($to,$subject,$message,"Content-type:text/plain; charset = utf-8") or print "Не могу отправить письмо . "; echo ""; ?> doctype html> html lang="ru-RU"> head> link rel="icon" type="image/ico" href="ico/favicon.ico"/>link rel="shortcut icon" type="image/x-icon" href="ico/favicon.ico"/> meta charset="utf-8"> title>Получение письма и продолжение заказаtitle> style> body { background-image: url(../img/fon/7.jpg); font-family: segoeui,arial,verdana,tahoma; } a { color: #ffffff; text-decoration: none; } h1 { color: #FFD700; font-size: 200%; } div { color: #FFFFFF; margin-top: 15%; text-align: center; } .small { font-size: 18px; } style> head> body> div class="main"> if(!$res): ?> h1>Ваша заявка была успешно отправленаh1> p class="small">Спасибо за обращение, мы свяжемся с Вами в ближайшее время !p> else: ?> h1>Заказ не осуществленh1> p class="small">Ошибка отправки: echo $mail->ErrorInfo; ?>p> endif; ?> a href="https://www.cyberforum.ru/">h1>Вернуться к сайтуh1>a> div> body> html>
Php обязательное заполнение полей
требуемый -> required -> прич->[rɪˈkwaɪəd]
требуемый (necessary) требующийся->required->прил->[rɪˈkwaɪəd]
require->гл->[rɪˈkwaɪə]->требовать, нуждаться, потребоваться, потребовать, понадобиться, обязывать, запрашивать, запросить, затребовать
Синтаксис required
Значения required
Значение по умолчанию required
По умолчанию атрибут required выключен.
Пример использования required
Для создания примера использования required в форме, после чего поле стане обязательным нам потребуется какая-то из Форм
Пример кода формы с использованием required
Выведем форму с обязательными полями с использованием required
Для тестирования формы с обязательными полями для заполнения с использованием атрибута required не вводите данные, а просто нажмите кнопку отправить, и вы получите результат!:
Проверка полей на обязательное заполнение в php
Здесь и вообще. нужно сказать, что полагаться на атрибут required не следует! Если вы получаете данные через php, то вам нужна обязательная проверка на пустоту в php!
Дело в том, что в процессе строительства вы рано или поздно столкнетесь с негативом! Это как в жизни, есть плохие люди и хорошие!
Так и в интернете! Есть люди, у которых отклонение от общих стандартов поведения.
И в вашей форме(они) могут запросто удалить атрибут required и отправить данные на сайт.
Зачем это им надо!? Ну не знаю. видимо от этого им становится весело! смайлы -> альтернативно одаренные!
PHP5 Поля форм
В этой главе показано, как сделать поля ввода обязательными и при необходимости создать сообщения об ошибках.
PHP Обязательные поля ввода
Из таблицы правил проверки на предыдущей странице мы видим, что «Имя» , «E-mail» , и «Пол» обязательные поля. Эти поля не могут быть пустыми и должны быть заполнены в HTML форме.
Поле | Правило проверки |
---|---|
Имя | Обязательно. + Должен содержать только буквы и пробелы |
Обязательно. + Должен содержать действительный адрес электронной почты (с @ и .) | |
Веб сайт | Произвольно. Если он присутствует, он должен содержать допустимый URL адрес |
Комментарий | Произвольно. Многострочное поле ввода (textarea) |
Пол | Обязательно. + Необходимо выбрать один из |
В предыдущей главе, все поля ввода были необязательными.
В следующем коде мы добавили несколько новых переменных: $nameErr , $emailErr , $genderErr и $websiteErr . Эти переменные error , будут содержать сообщения об ошибках для требуемых полей. Мы также добавили оператор if и else для каждого переменной $_POST . Что проверит переменную $_POST пуста ли в PHP функция empty(function) . Если пустая, сообщение об ошибке сохранится в различных переменных error , а если она не пуста, она отправляет входные данные пользователя через функцию test_input() :
// Определить переменные и установить в пустые значения
$nameErr = $emailErr = $genderErr = $websiteErr = «»;
$name = $email = $gender = $comment = $website = «»;
?php
if ($_SERVER[«REQUEST_METHOD»] == «POST») if (empty($_POST[«name»])) $nameErr = «Имя обязательно»;
> else $name = test_input($_POST[«name»]);
>
if (empty($_POST[«email»])) $emailErr = «Email обязательно»;
> else $email = test_input($_POST[«email»]);
>
if (empty($_POST[«website»])) $website = «»;
> else $website = test_input($_POST[«website»]);
>
if (empty($_POST[«comment»])) $comment = «»;
> else $comment = test_input($_POST[«comment»]);
>
if (empty($_POST[«gender»])) $genderErr = «Пол обязательно»;
> else $gender = test_input($_POST[«gender»]);
>
>
?>
PHP Отображение cообщений об ошибках
Затем в HTML форме мы добавляем немного скрипта, после каждого обязательного поля, которая создает правильное сообщение об ошибке, если это необходимо (то есть, если пользователь пытается отправить форму без заполнения обязательных полей):
Пример
Следующий шаг — проверка входных данных, «Содержит ли поле Имя: только буквы и пробелы?» , » Содержит ли поле E-mail: действительный синтаксис адреса электронной почты?», «Содержит ли поле Вебсайт: допустимый URL адрес?».
PHP Формы — обязательные поля
В этой главе показано, как сделать обязательные поля ввода и, при необходимости, создать сообщения об ошибках.
PHP — Обязательные поля
Из таблицы правил проверки формы на предыдущей странице видно, что «Имя», «E-mail», и «Пол» — обязательные поля. Эти поля не могут быть пустыми и должны быть заполнены в HTML форме.
Поле | Правила проверки |
---|---|
Имя | Обязательно. + Должно содержать только буквы и пробелы |
Обязательно. + Должен содержать действительный адрес электронной почты (с использованием @ and .) | |
Веб-сайт | Не обязательно. Если поле присутствует, оно должно содержать действительный URL |
Комментарий | Не обязательно. Многострочное поле ввода (текстовое поле) |
Пол | Обязательно. Должен быть выбран один вариант |
В предыдущей главе все поля ввода были необязательными.
В следующем коде мы добавили несколько новых переменных: $nameErr, $emailErr, $genderErr и $websiteErr. Эти переменные ошибки будут содержать сообщения об ошибках для обязательных полей. Мы также добавили оператор if else для каждой переменной $_POST. Он проверяет, является ли переменная $_POST пустой (с помощью функции PHP empty() ). Если оно пустое, сообщение об ошибке сохраняется в различных переменных ошибки, а если оно не пустое, оно отправляет введенные пользователем данные через функцию test_input() :
// определить переменные и установить пустые значения
$nameErr = $emailErr = $genderErr = $websiteErr = «»;
$name = $email = $gender = $comment = $website = «»;
?php
if ($_SERVER[«REQUEST_METHOD»] == «POST») if (empty($_POST[«name»])) $nameErr = «Имя обязательно»;
> else $name = test_input($_POST[«name»]);
>
if (empty($_POST[«email»])) $emailErr = «Email обязательно»;
> else $email = test_input($_POST[«email»]);
>
if (empty($_POST[«website»])) $website = «»;
> else $website = test_input($_POST[«website»]);
>
if (empty($_POST[«comment»])) $comment = «»;
> else $comment = test_input($_POST[«comment»]);
>
if (empty($_POST[«gender»])) $genderErr = «Пол обязательно»;
> else $gender = test_input($_POST[«gender»]);
>
>
?>
PHP — Показать сообщения об ошибках
Затем в HTML-форму мы добавляем небольшой скрипт после каждого обязательного поля, который генерирует правильное сообщение об ошибке, если это необходимо (то есть, если пользователь пытается отправить форму без заполнения обязательных полей):
Пример
Следующим шагом является проверка входных данных, а именно: «Содержит ли поле Имя только буквы и пробелы?», и «Содержит ли поле E-mail валидный синтаксис адреса электронной почты?», и, если заполнено поле Веб-сайт, «содержит ли оно действительный URL-адрес?»