PHP - авторизация доступа

Пример сценария


Вот пример сценария, в котором используется авторизация на основе заголовка WWW-Authenticate. Он состоит из двух страниц - на первой логин с паролем проверяются и в том случае, если они есть в файле паролей, то посетителю выводится форма для загрузки файла. На второй странице осуществляется загрузка файла.

Файл 1

<?php foreach (file("passw/passwr") as $k) { if (substr($k, 0, -2)=="$PHP_AUTH_USER $PHP_AUTH_PW") {$rez=1;} }

if ($rez!=1) { Header("WWW-Authenticate: Basic realm=\"Защищенная зона"\""); Header("HTTP/1.0 401 Unauthorized"); echo ("<p>Доступ закрыт!</p>"); exit; } ?> <FORM ENCTYPE="multipart/form-data" ACTION="Файл 2" METHOD=POST> Закачать файл:<INPUT NAME="zak" TYPE="file"> <INPUT TYPE="submit" VALUE="Закачать"> </FORM>

Файл 2

<?php foreach (file("passw/passwr") as $k) { if (substr($k, 0, -2)=="$PHP_AUTH_USER $PHP_AUTH_PW") { $rez=1; } }

if ($rez!=1) { echo ("<p>Доступ закрыт!</p>"); exit; }

if ($zak=="none") {echo ("Вы забыли указать файл...");} elseif (copy($zak, "папка для файлов/$zak_name")) {echo("Файл $zak_name загружен");} else { echo("Не удалось скопировать $zak_name");} ?>

Пояснения к сценарию загрузки файлов смотрите в предыдущей главе.



Содержание раздела