【发布时间】:2020-09-28 13:51:50
【问题描述】:
你好,我正在做一个用户和管理员有不同登录名的项目 我想为用户和管理员设置不同的会话 这是我如何设置管理会话
$this->session->set('adminData', [
'id' => $teacher['id'],
'name' => $teacher['name'],
'email' => $teacher['email'],
'new_email' => $teacher['new_email']
]);
用户的会话数据如下
$this->session->set('userData', [
'id' => $teacher['id'],
'name' => $teacher['name'],
'email' => $teacher['email'],
'new_email' => $teacher['new_email']
]);
但是在验证用户时
if ($this->session->isLoggedIn) {
return redirect()->to('admin');
}
我面临的唯一问题是我可以以管理员或用户身份登录,但不能同时登录 当我已经以管理员身份登录时尝试以用户身份登录时,它会将我重定向到用户/帐户。
有什么方法可以让我为管理员设置 isAdminLoggedIn 并且可以为用户使用 isLoggedIn?
【问题讨论】:
-
与其让自己过于复杂,为什么不把它变成基于权限的方法呢?单个登录例程,但每个用户可能有也可能没有“管理员”权限,如果存在,则启用管理员功能?
-
@JavierLarroulet 实际上我必须根据用户和管理员组自定义所有内容。还有一些因素。所以我选择了这种方法
标签: php codeigniter session codeigniter-4