Я написал этот скрипт:Php запрашивает имя пользователя и пароль дважды
<?
session_start();
if(isset($_GET["logout"])) {
unset($_SESSION["user"]);
unset($_SESSION["user_token"]);
echo "successful logout";
die;
}
if(!isset($_SESSION["user_token"])){
$GETusername = $_SERVER["PHP_AUTH_USER"];
$GETpassword = $_SERVER["PHP_AUTH_PW"];
$users = array(
'user' => 'pass',
'user2' => 'pass2',
'user3' => 'pass3'
);
$user = isset($GETusername) ? strtolower($GETusername) : '';
$pass = isset($GETpassword) ? $GETpassword : '';
$config["admin_username"] = $user;
$config["admin_passowrd"] = $pass;
header("WWW-Authenticate: Basic realm=\"Login\"");
if (!isset($users[$user]) or $users[$user] != $pass) {
?>
wrong username or password!
<?
die;
}
$_SESSION["user"] = $config["admin_username"];
$_SESSION["user_token"] =
"auth-".md5($config["admin_username"]).md5($config["admin_passowrd"]);
die;
}
echo "username: ".$_SESSION["user"]."<br /><a href='?logout'>logout</a>";
?>
Когда я пытаюсь войти в первого времени я должен ввести свое имя пользователя и пароль дважды (как если бы Я набрал неверный пароль или имя пользователя)! Но когда я выхожу из системы и снова пытаюсь войти в систему, все нормально! В чем проблема?
Спасибо! По некоторым причинам первые две строки в моем коде не были видны в этом вопросе. Я чиню это. Но проблема все еще существует. – Zoran