我正在为我的项目使用tank auth,但在工作时会话意外过期。
public function __construct()
{
parent:: __construct();
$this->load->model("stulib");
$this->load->library("Gen");
$this->load->model('tank_auth/users','users');
$this->load->library('tank_auth');
$this->title='Angel';
$this->user_id=$this->tank_auth->get_user_id();
$this->school_id=$this->users->get_school();
$this->school_name=$this->users->get_school_name($this->school_id);
$this->yesterday=$this->studentlib->yesterday();
if(!$this->tank_auth->is_logged_in())
die("No access rio!");
}
那是我的控制器。我只在控制器的构造函数中检查is_loged_in。
编辑:
- 我正在数据库中存储会话
- 我没有使用任何ajax请求
- 我使用twitter引导程序框架
我在Tank Auth和CodeIgniter 2.1上也遇到了类似的问题。
你可以在这里找到详细的解释和解决方案
http://www.hiretheworld.com/blog/tech-blog/codeigniter-session-race-conditions
这些链接还可以帮助您:http://ellislab.com/forums/viewthread/199753/#962141
http://ellislab.com/forums/viewthread/203821/#951378