问题描述
我必须开发具有不同访问级别的页面的网站。数据库中已经有 users
表,并且对于需要进行正确检查的第一页已经制作了此代码,效果很好
$row = mysqli_fetch_assoc($res);
$bitmask = $row['Rights'];
$bm = new bitmask();
$permarr = $bm->getPermissions($bitmask);
if (!($permarr["admin"] || $permarr['superAdmin'])){
$home_url = '../auth-login.php';
header("Location: $home_url");
echo 'access denied';
exit();
}
伪代码:
- 开始测试
- 从数据库中选择权限
user = $SESS[user]
- 用实际需要的权限检查选择结果权限
是否可以避免在每个页面上只更改 REQUIRED_RIGHTS
的相同代码?如何在 PHP 中使用一些可变参数 USER,REQUIRED_RIGHTS
包含它?
解决方法
Actum Ne Agas: “不要做已经完成的事情!”
在我看来,您似乎要开始“完全从头开始创建网站”。相反,为什么不评估为 PHP 开发的许多框架,并将您的新网站基于其中之一?
框架为许多常见问题提供了强大的解决方案,例如这个问题。 (他们每个人都倾向于以不同的方式做到这一点。)