【问题标题】:Codeigniter session using ajax使用 ajax 的 Codeigniter 会话
【发布时间】:2011-09-22 18:54:49
【问题描述】:

我知道这可能是一个重复的问题,但我想知道是否有人在使用 ajax 调用时让用户会话保持活动状态。

我发现当我登录并让浏览器打开 1-2 小时时,当我启动 ajax 调用时会话已过期。

我正在使用标准:

$config['sess_time_to_update']  = 7200;

我想知道是否有人有明确的方法来保持用户会话,最好不使用间隔 js 函数

【问题讨论】:

  • sess_time_to_update 是重新生成会话之前的秒数。 sess_expiration 是会话将持续的秒数。将sess_expiration设置为 0 会将会话设置为永不过期。
  • 哦对不起错行我的意思是到期= 7200 ...所以你建议把它设置为0?我使用的是 CI 2.0+ 版本,如果会话过期设置为 0(并且在关闭 = TRUE 时过期),会话是否也会在浏览器调用时过期?
  • 7200 秒 = 2 小时,所以这很有意义。正如birderic所说,要么通过将其设置为0来禁用过期,要么从默认秒数增加。
  • thanxs 伙计们......我的问题已经解决了阅读你的谈话......再次thanxs。
  • 如果您想继续让会话过期,请通过stackoverflow.com/questions/7980193/…查看 agustinrc89 答案。

标签: php jquery ajax session codeigniter


【解决方案1】:

会话时间在__construct() 中设置,因此您可以在进行 ajax 调用时调用会话库中的任何方法,它应该会更新您的会话到期时间。我可能只是在会话中设置一个“ajax_request”项,只是为了调用库并触发构造函数来重置会话到期时间。

【讨论】:

  • 嗯,但我每次都需要 js ajax 调用来刷新,如果你在上面阅读,用户 birderic 有正确的答案,我可以看到:P thx 不管怎样我投了赞成票 ;)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-12-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多