首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何防止CodeIgniter在每次访问时都创建会话?

如何防止CodeIgniter在每次访问时都创建会话?
EN

Stack Overflow用户
提问于 2012-12-03 09:01:47
回答 1查看 608关注 0票数 1

我使用的是CodeIgniter 2.1.3中保存到数据库和TankAuth的会话。总体设置是TankAuth检查用户是否通过

代码语言:javascript
复制
$this->tank_auth->is_logged_in()

这引用了libraries/Tank_auth.php

代码语言:javascript
复制
function is_logged_in($activated = TRUE)
{
    return $this->ci->session->userdata('status') === ($activated ? STATUS_ACTIVATED : STATUS_NOT_ACTIVATED);
}

这需要初始化session类--然后将在数据库中创建一个新会话。

所以我想知道是否有一种方法可以避免这种情况,因为我的数据库中充满了非登录用户的空会话。

对于如何解决这个问题,有什么想法/建议吗?

EN

回答 1

Stack Overflow用户

发布于 2012-12-03 13:50:46

要删除非活动会话,可以执行以下两项操作:-

销毁每次用户注销时,从数据库中删除其行并调用会话销毁函数,如下所示

$this->CI-> DB _Master->where('session_id',$session'session_id');会话cron作业,根据数据库数据在每个特定时间间隔后运行,以删除与非活动用户对应的行。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13675766

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档