用户在注册时被赋予默认的“member_type”作为“用户”。我正在尝试使用存储在 header.php 中的函数来限制使用 $_SERVER['SCRIPT_NAME'] 的“用户”和未经身份验证的访问者对某些页面的访问。
这个概念是合理的(我相信),但我真的需要一些新鲜的眼睛来帮助我解决逻辑。
这是标题中的函数:
$basicAuth = array("member.php", "order.php", "logout.php");
$adminonly = array("admin.php", "v_feedback.php", "user.php", "v_content.php", "product.php");
restrictAccess($basicAuth, $adminonly);
这是完整的功能:
function restrictAccess($basicAuth, $adminonly){
$error = "You do not have the authentication privileges to access this area, go <a href=\"index.php\" alt=\"Home\">home</a>.";
if (isset($_SESSION['type'])){
$auth = "Basic";
if($_SESSION['type']=="Admin"){
$auth = "Admin";
}
} else {
$auth = "None";
}
//For testing purposes
echo $auth;
if ($auth == "None"){
if(($_SERVER['SCRIPT_NAME']==$basicAuth)||($_SERVER['SCRIPT_NAME']==$adminonly)){
echo $error;
exit();
}
}elseif($auth =="Basic"){
if(($_SERVER['SCRIPT_NAME'])==$adminonly){
echo $error;
exit();
}
}
}
我有一种感觉,这与我构建它的方式背后的逻辑有关,这是错误的。
谢谢你。