Пример сценария
Вот пример сценария, в котором используется авторизация на основе заголовка 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");}
?>
Пояснения к сценарию загрузки файлов смотрите в предыдущей главе.
|