【发布时间】:2016-02-23 13:37:31
【问题描述】:
我必须检查每个控制器中的会话。如果用户已注销,则重定向到登录页面。我如何使用 codeigniter 中的钩子来做到这一点,这样我就不必在每个控制器中编写会话条件。帮帮我。
我在application/hooks/Authenticate.php 中有以下代码
function __construct()
{
$this->CI =& get_instance();
}
function loginCheck()
{
if($this->session->userdata('role_id')=='' && $this->session->userdata('user_id')=='' && $this->session->userdata('client_id')==''){
redirect('login');
}
}
application/config/hooks.php中的以下代码
$hook['pre_controller'][] = array(
'class' => 'Authenticate',
'function' => 'loginCheck',
'filename' => 'authenticate.php',
'filepath' => 'hooks/authenticate',
'params' => array()
);
当我注销并按下浏览器后退按钮时,它再次将我带到登录部分。似乎会话没有正确销毁。
【问题讨论】:
-
你目前有什么代码?你试过什么?什么不工作?
标签: codeigniter