Львиная доля задач в PHP связана с обработкой данных, полученных от пользователя. И в большинстве случаев, эти данные получены из формы, поэтому обработка форм в PHP является важнейшим моментом при создании сайта , о котором я и расскажу в этом материале.
Львиная доля задач в PHP связана с обработкой данных, полученных от пользователя. И в большинстве случаев, эти данные получены из формы, поэтому обработка форм в PHP является важнейшим моментом при создании сайта, о котором я и расскажу в этом материале.
Для начала давайте создадим форму на HTML:
<html>
<head>
<title>Форма</title>
</head>
<body>
<form name = 'myform' action = 'req.php' method = 'post'>
Ваш логин: <input type = 'text' name = 'login' />
<br />
Ваш пароль: <input type = 'password' name = 'pass' />
<br />
<input type = 'submit' value = 'Войти' />
</form>
</body>
</html>Это пример классической формы авторизации пользователя, которую, уверен, многие из Вас многократно заполняли на самых разных сайтах. Давайте теперь обсудим один важный момент: как отправляются данные? Существует два метода (мы с Вами будем только два рассматривать) - это GET и POST. Главное их отличие - это вид отправки: открытый (GET) и закрытый (POST). Самый лучший способ понять, в чём разница - это открыть данный HTML-код в браузере и нажать кнопку "Войти". Посмотрите на адресную строку, а потом поставьте другой метод, снова пройдите и вновь посмотрите на адресную строку. Отличие будет бросаться в глаза мгновенно.
Соответственно, в PHP существуют два массива: $_GET и $_POST, которые содержат данные, полученные каждым из этих методов. Также есть массив $_REQUEST, который содержит данные $_GET и $_POST одновременно. Я Вам советую использовать метод POST и массив $_POST, хотя, безусловно, зависит от ситуации, но в большинстве случаев делают именно так.
Теперь давайте обработаем данные. Давайте реализуем простой скрипт (в файле "req.php"):
<?php
$login = $_POST['login'];
$pass = $_POST['pass'];
if (($login == "Admin") && ($pass == "AdminPass"))
echo "Привет, Admin!";
else echo "Доступ закрыт";
?>В данном скрипте мы получаем данные, полученные из формы методом POST (из массива $_POST, хотя с таким же успехом могли получить эти данные из $_REQUEST). Дальше проверяем логин и пароль и выводим: "Привет, Admin!" или "Доступ закрыт". Разумеется, чтобы создать систему авторизации пользователей на сайте, необходимо ещё узнать о cookie или о сессиях (в принципе, тоже cookie), но о них мы поговорим несколько позднее, потому что у нас впереди ещё очень много важных тем.
Аналогично, считываются и обрабатываются абсолютно любые данные из форм. То есть всё, что Вам нужно - это знать имя переменной (задаётся в HTML-форме) и дальше использовать массивы $_POST, $_GET и $_REQUEST.
