Учебное пособие: Аутентификация пользователей
Просьба к пользователю доказать свою личность называется аутентификацией.
Обычный метод аутентификации в Web — это требование к посетителям предоставить уникальное имя пользователя и пароль. Аутентификация используется для разрешения или запрещения доступа к определенным страницам или ресурсам. Аутентификация может быть необязательной либо использоваться для других целей, например, для персонализации.
1. Форма для передачи данных
Пользователь может в удобной форме ввести уникальное имя и пароль с помощью HTML -документа index.html с элементами диалога — текстовыми полями и кнопкой.
Листинг index.html. Страница с формой
<html>
<head>
<title>АУТЕНТИФИКАЦИЯ ПОЛЬЗОВАТЕЛЯ</title>
</head>
<body>
<h1>Пожалуйста зарегистрируйтесь</h1>
<p>Зарегистрировавшись, Вы получите доступ к защищенной странице.</p>
<p>Имя и Пароль можно получить у администратора.</p>
<form action=hello.php>
Имя : <input type=text name=login> <br>
Пароль : <input type=password name=pass> <br>
<input type=submit v а 1ue = Отправить ><br>
</form>
</body>
</html>
После того как пользователь заполнит текстовые поля и нажмет кнопку «Отправить», браузер обратится к сценарию hello.php и передаст их в строке параметров. В атрибуте action тега <form> задан относительный путь, т. е. сценарий hello.php будет искаться браузером в том же самом каталоге, что и файл form.html .
Осталось определиться, как можно извлечь $ l ogin и $pass из строки параметров.
2. Трансляция полей формы
Независимо от того, каким методом — get или post — воспользовался браузер, РНР сам определяет, какой метод был задействован.
Все данные из полей формы РНР помещает в глобальный массив $_ REQUEST .
Значение поля login будет храниться в $_ REQUEST ['login'] , а значение поля p ass — в $_ REQUEST ['pass'].
Чтобы можно было как-то разделить GET -параметры от POST -данных, РНР также создает массивы $_GET и $_ POST , заполняя их соответствующими значениями. Массив $_ REQUEST представляет собой объединение этих двух массивов.
Листинг hello.php - сценарий извлечения текста из полей формы
<?php
if ($_REQUEST['login']=="root" && $_REQUEST['pass']=="Z10N0101")
{
--> ЧИТАТЬ ПОЛНОСТЬЮ <--