各位,在我的机子上使用$PHP_AUTH_USER来验证密码始终通,久思不得其解,望各位帮助解决一下。
我的实现方法如下: 比如说,我用如下的代码调试:
<?
if(!isset($PHP_AUTH_USER))
{
Header("WWW-Authenticate: Basic realm="My Realm"");
Header("HTTP/1.0 401 Unauthorized");
echo "Text to send if user hits Cancel button";
exit;
}
else
{
if ( !($PHP_AUTH_USER=="tnc" && $PHP_AUTH_PW=="nature") )
{
// 如果是错误的用户名称/密码对,强制再验证
Header("WWW-Authenticate: Basic realm="My Realm"");
Header("HTTP/1.0 401 Unauthorized");
echo "ERROR : $PHP_AUTH_USER/$PHP_AUTH_PW is invalid.";
exit;
}
else
{
echo "Welcome tnc!";
}
?> 能够弹出密码框,但是输入完后,就是无法继续运行下去,不管条件是否满足,都会再次弹出来要求再次输入密码和用户名。到最后的结果就是无法正常的使用它验证密码。
即使我把tnc和nature都正确输入了,也还是会跳出来那个对话框,一直下去,最后就是显示Text to send if user hits Cancel button,也就是没有通过的提示。
请各位帮助解决一下,本人不胜感激。
我的实现方法如下: 比如说,我用如下的代码调试:
<?
if(!isset($PHP_AUTH_USER))
{
Header("WWW-Authenticate: Basic realm="My Realm"");
Header("HTTP/1.0 401 Unauthorized");
echo "Text to send if user hits Cancel button";
exit;
}
else
{
if ( !($PHP_AUTH_USER=="tnc" && $PHP_AUTH_PW=="nature") )
{
// 如果是错误的用户名称/密码对,强制再验证
Header("WWW-Authenticate: Basic realm="My Realm"");
Header("HTTP/1.0 401 Unauthorized");
echo "ERROR : $PHP_AUTH_USER/$PHP_AUTH_PW is invalid.";
exit;
}
else
{
echo "Welcome tnc!";
}
?> 能够弹出密码框,但是输入完后,就是无法继续运行下去,不管条件是否满足,都会再次弹出来要求再次输入密码和用户名。到最后的结果就是无法正常的使用它验证密码。
即使我把tnc和nature都正确输入了,也还是会跳出来那个对话框,一直下去,最后就是显示Text to send if user hits Cancel button,也就是没有通过的提示。
请各位帮助解决一下,本人不胜感激。
if(!isset($_SERVER['PHP_AUTH_USER']))
{
Header("WWW-Authenticate: Basic realm=\"My Realm\"");
Header("HTTP/1.0 401 Unauthorized");
echo "Text to send if user hits Cancel button";
exit;
}
else
{
if ( !($_SERVER['PHP_AUTH_USER']=="tnc" && $_SERVER['PHP_AUTH_PW']=="nature") )
{
// 如果是错误的用户名称/密码对,强制再验证
Header("WWW-Authenticate: Basic realm=\"My Realm\"");
Header("HTTP/1.0 401 Unauthorized");
echo "ERROR : $PHP_AUTH_USER/$PHP_AUTH_PW is invalid.";
exit;
}
else
{
echo "Welcome tnc!";
}
}