【发布时间】:2014-08-18 16:27:34
【问题描述】:
我正在构建一个网站,其中针对不同类型的用户(例如客户和销售人员)提供 3 种登录页面。有些页面应该仅供指定用户访问。如果有人试图进入特定页面,我希望脚本检查是否允许该人这样做。
在我看来,我应该在每个登录页面以及当有人尝试访问特定页面时创建不同的会话名称,以检查它是否在正确的位置是正确的人。
我知道检查是否存在任何会话可以通过
isset($_SESSION)
我还在这里找到了一些关于 session_name 的信息:http://php.net/manual/en/function.session-name.php
但我似乎没有把这两件事放在一起。有人可以提出解决方案吗?我已经学习 PHP 3 周了,所以请放轻松。
【问题讨论】:
-
$_SESSION是简单的数组,所以isset($_SESSION['name']) -
出于安全原因,我不建议这样做。 SESSION 本身是用户的临时身份。您可以将 $_SESSION 用作数组,它处理您希望存储(临时)给当前用户的所有数据。例如:$_SESSION['is_salesman'] = true;在每个请求上设置。
-
你必须阅读ACL(访问控制列表)stackoverflow.com/questions/4415663/…
-
@M1K1O 这段代码是否正确:
session_name("mySession");然后isset($_SESSION['mySession'])在 IF 语句中使用? -
我认为你最好使用
$_SESSION["hasPermission"] = true;,然后通过IF语句检查。