我的数据库中有一个用户表,每个用户都有一个 auth_level (1-3)。在我的网站上,我有一个用于添加/删除新用户帐户的管理页面,我想将访问此页面的权限仅限于身份验证级别为 3 的用户。我一直试图让它与会话一起使用,但我被卡住了. 希望有人可以帮助我。
这是我限制访问的代码。不知道我哪里出错了。check.php 开始会话。
<?php
require_once('check.php');
//This function returns True if auth level = '3'
//Otherwise it returns False
function CheckAccess()
{
$result = (isset($_SESSION['SESS_AUTH_LEVEL']) && $_SESSION['SESS_AUTH_LEVEL'] == 3 );
if(!$result)
{
header('WWW-Authenticate: Basic realm=“Test restricted area”');
header('HTTP/1.0 401 Unauthorized');
return false;
}
else
{
header("location: admin.php");
}
}
?>
如果我以身份验证级别 1 或 3 的用户身份登录,我会得到相同的空白页。