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 форме.

Поле Правило проверки
Имя Обязательно. + Должен содержать только буквы и пробелы
E-mail Обязательно. + Должен содержать действительный адрес электронной почты (с @ и .)
Веб сайт Произвольно. Если он присутствует, он должен содержать допустимый 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 = «»;

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 форме.

Поле Правила проверки
Имя Обязательно. + Должно содержать только буквы и пробелы
E-mail Обязательно. + Должен содержать действительный адрес электронной почты (с использованием @ and .)
Веб-сайт Не обязательно. Если поле присутствует, оно должно содержать действительный URL
Комментарий Не обязательно. Многострочное поле ввода (текстовое поле)
Пол Обязательно. Должен быть выбран один вариант

В предыдущей главе все поля ввода были необязательными.

В следующем коде мы добавили несколько новых переменных: $nameErr, $emailErr, $genderErr и $websiteErr. Эти переменные ошибки будут содержать сообщения об ошибках для обязательных полей. Мы также добавили оператор if else для каждой переменной $_POST. Он проверяет, является ли переменная $_POST пустой (с помощью функции PHP empty() ). Если оно пустое, сообщение об ошибке сохраняется в различных переменных ошибки, а если оно не пустое, оно отправляет введенные пользователем данные через функцию test_input() :

// определить переменные и установить пустые значения
$nameErr = $emailErr = $genderErr = $websiteErr = «»;
$name = $email = $gender = $comment = $website = «»;

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-адрес?»

Источник

Читайте также:  Apache php fpm docker
Оцените статью