我有一个包含一些字段的表,其中两个字段分别命名为"id"answers"role"。"Id"是主键,"role"是包含"admin"或"generaluser"等用户类型的字段,用于不同目的的登录。
当用户登录时,代码实际上使用SELECT * FROM
从数据库中查询数据,我创建了一个会话$_SESSION['role']
来存储字段"role"中的数据。如何存储"id"中的数据以备下次使用?创建另一个会话安全吗?
您可以将多个变量作为数组保存到$_SESSION
中。有关更多信息,我建议查看$_SESSION上的PHP.net页面。
我建议把代码写成
$_SESSION['myVars'] = ['id' => $user_id, 'role' => $role];
然后用取回
$myVars = $_SESSION['myVars'];
$role = $myVars['role'];
HOWEVERPHP有许多可用于主要框架和独立系统的身份验证和认证系统。我建议使用其中一个来进行用户管理,而不是自己滚动。这不仅对你来说更容易,而且可能会为你的用户提供更高标准的保护,因为密码会被正确加密。