|
|
|
| Что тут надо исправить чтоб это работало?
<?php
// Если используется сервер IIS, потребуется установить переменные
// среды $PHP_AUTH_USER и $PHP_AUTH_PW
if (substr ($SERVER_SOFTWARE, 0, 9) == "Microsoft" &&
!isset($PHP_AUTH_USER) &&
!isset($PHP_AUTH_PW) &&
substr ($HTTP_AUTHORIZATION, 0, 6) == "Basic"
)
{
list($PHP_AUTH_DSER, $PHP_AUTH_PW) =
explode ( " : " , base64_decode (substr ($HTTP_AUTHORIZATION, 6) ) ) ;
}
// Замените этот оператор if запросом к базе данных или чем-то подобным
if ($PHP_AUTH_USER!== "user" || $PHP_AUTH_PW !== "pass")
{
// Посетитель еще не передал деталей или его
// имя и пароль неправильные
header ( 'WWW-Authenticate: Basic realm="Realm-Name" ' ) ;
if (substr ($SERVER_SOFTWARE, 0, 9) == "Microsoft")
header ("Status : 401 Unauthorized");
else
header ("HTTP/1. 0 401 Unauthorized");
echo "<hl>Go Away !</hl>" ;
echo "You are not authorized to view this resource.";
}
else
{
// посетитель предоставил правильную информацию
echo "<hl>Here it is!</hl>";
echo "<p>I bet you are glad you can see this secret page.";
}
?>
|
| |
|
|
|
|
|
|
|
для: lifead
(20.08.2007 в 10:42)
| | А какие ошибки выдаёт скрипт? | |
|
|
|
|
|
|
|
для: cheops
(20.08.2007 в 11:30)
| | Notice: Undefined variable: PHP_AUTH_USER in x:\home\localhost\www\temp\test4.php on line 15
[Денвер: показать возможную причину ошибки]
Warning: Cannot modify header information - headers already sent by (output started at x:\home\localhost\www\temp\test4.php:15) in x:\home\localhost\www\temp\test4.php on line 19
Warning: Cannot modify header information - headers already sent by (output started at x:\home\localhost\www\temp\test4.php:15) in x:\home\localhost\www\temp\test4.php on line 23
Go Away !You are not authorized to view this resource. | |
|
|
|
|
|
|
|
для: lifead
(20.08.2007 в 11:51)
| | register_globals off
используйте $_SERVER['PHP_AUTH_USER'] | |
|
|
|
|
|
|
|
для: lifead
(20.08.2007 в 11:51)
| | list($PHP_AUTH_DSER, $PHP_AUTH_PW) = ..... | |
|
|
|