我使用的是CodeIgniter 2.1.3中保存到数据库和TankAuth的会话。总体设置是TankAuth检查用户是否通过
$this->tank_auth->is_logged_in()这引用了libraries/Tank_auth.php
function is_logged_in($activated = TRUE)
{
return $this->ci->session->userdata('status') === ($activated ? STATUS_ACTIVATED : STATUS_NOT_ACTIVATED);
}这需要初始化session类--然后将在数据库中创建一个新会话。
所以我想知道是否有一种方法可以避免这种情况,因为我的数据库中充满了非登录用户的空会话。
对于如何解决这个问题,有什么想法/建议吗?
发布于 2012-12-03 13:50:46
要删除非活动会话,可以执行以下两项操作:-
销毁每次用户注销时,从数据库中删除其行并调用会话销毁函数,如下所示
$this->CI-> DB _Master->where('session_id',$session'session_id');会话cron作业,根据数据库数据在每个特定时间间隔后运行,以删除与非活动用户对应的行。
https://stackoverflow.com/questions/13675766
复制相似问题