Получаем данные от элементов формы с помощью PHP
В этом уроки мы с помощью функций PHP получим данные, которые будет вводить пользователь в форму.
Первое, что нам нужно - это создать форму:
<form action="app/check.php" method="post">
<p>Имя: <input name="name" type="text"></p>
<p>Фамилия: <input name="surname" type="text"></p>
<p>E-mail: <input name="email" type="text"></p>
<p>Сообщение: <br /><textarea name="message" cols="30" rows="5"></textarea></p>
<p><input type='submit' value='Отправить'></p>
</form>
Обратите внимание на строку action="app/check.php" - это адрес обработчика PHP, здесь, мы будет код для формы. Также, на параметр name у полей формы, мы будем использовать эти имена при написании кода. Передавать данные будем методм - POST.
Как видите, в поле "Имя" пользователь должен ввести свое имя, в поле "Фамилия" - фамилию, в "E-mail" - электронный адрес, в "Сообщение" - какое-нибуть сообщение или предложение, которые будут отправляться в обработчик при клике на кнопку "Отправить".
1. Давайте начнем. Создайте и откройте (через редактор) обработчик app/code.php - сначала, это просто пустая страница. Далее откройте тег PHP - <?php.
2. Сначала, нам нужно проверить была ли отправлена форма, для этого мы будем использовать глобальную переменную $_SERVER и проверять REQUEST_METHOD
<?php
if($_SERVER['REQUEST_METHOD'] == 'POST') {
// наш код
}
?>
3. Дальше, если форма отправлена, мы можем получить данные от поля "Имя", для этого, какой-нибуть переменной присваиваем полученное значение от этого поля, например:
<?php
$name = $_POST['name'];
?>
$_POST - переменная, в которой сохраняются данные, если форма была отправлена методом POST.
$_POST['name'] - получаем данные от поля name.
4. Тоже самое делаем и для остальных наших полей:
<?php
$name = $_POST['name'];
$surname = $_POST['surname'];
$email = $_POST['email'];
$message = $_POST['message'];
?>
5. Данные мы получили, теперь мы можем их вывести, для этого в страницу обработчика дописываем код:
<?php
$name = $_POST['name'];
$surname = $_POST['surname'];
$email = $_POST['email'];
$message = $_POST['message'];
echo $name."<br />".$surname."<br />".$email."<br />".$message."<br />";
?>
Не рекомендуется просто так, без проверки, выводить введенные пользователем данные.
Пропускайте переменные хотя бы через функцию htmlspecialchars.
Рекомендуем почитать