PHP/Login Authentication/Browser Password Dialog — различия между версиями
Admin (обсуждение | вклад) м (1 версия) |
Admin (обсуждение | вклад) м (1 версия) |
(нет различий)
|
Текущая версия на 07:05, 26 мая 2010
Open browser password dialog and authenticate user based on database
<?php
function authenticate_user() {
header("WWW-Authenticate: Basic realm="Secret Stash"");
header("HTTP/1.0 401 Unauthorized");
exit;
}
if(! isset($_SERVER["PHP_AUTH_USER"])) {
authenticate_user();
} else {
mysql_connect("localhost","authenticator","secret") or die("Can"t connect to database server!");
mysql_select_db("gilmorebook") or die("Can"t select authentication database!");
$query = "SELECT username, pswd FROM user WHERE username="$_SERVER[PHP_AUTH_USER]"
AND pswd=MD5("$_SERVER[PHP_AUTH_PW]") AND ipAddress="$_SERVER[REMOTE_ADDR]"";
$result = mysql_query($query);
if (mysql_num_rows($result) == 0)
authenticate_user();
mysql_close();
}
?>
Prompt Browser password dialog
<?php
if (($_SERVER["PHP_AUTH_USER"] != "specialuser") || ($_SERVER["PHP_AUTH_PW"] != "secretpassword")) {
header("WWW-Authenticate: Basic Realm="Secret Stash"");
header("HTTP/1.0 401 Unauthorized");
print("You must provide the proper credentials!");
exit;
}
?>