我正在建立一个网站,其中有3种不同类型的用户(如客户和销售人员)的登录页面。有些页面应该只有指定的用户才能访问。如果有人试图进入一个特定的页面,我希望脚本检查该人是否被允许这样做。
在我看来,我应该在每个登录页面创建不同的会话名,当有人试图访问特定页面时,检查是否正确的人在正确的地方。
我知道检查是否存在任何会话可以通过
完成isset($_SESSION)
和我也发现了一些关于session_name在这里的信息:http://php.net/manual/en/function.session-name.php
但是我似乎不能把这两件事联系在一起。有人能提出解决方案吗?
通过注册设置为用户权限1和2,并与用户名和哈希密码一起保存到数据库
| ID | Username | Password Hash | User Level |
| 1 | User01 | t5ns4fdgn6sdn45d4t5zuk65fz6s4dt1 | 1 |
| 2 | User02 | e8tdzjui56jn4fgvh635csd6trz6ghr8 | 2 |
每次登录时设置用户级别为$_SESSION["userLevel"]
。
在您想要保护的页面上,您可以执行以下操作(在文档的最开头):
function UserLevel($level){
if($_SESSION["userLevel"] == $level){
header("Location: index.php");
exit;
}
}
然后你可以对用户进行排序:
UserLevel(1); // Only user 1 can access this page
UserLevel(2); // Only user 2 can access this page