如何在浏览器窗口关闭时使codeigniter会话失效

时间:2016-07-20 11:01:05

标签: php codeigniter session login

我正在使用codeigniter执行此任务。在配置文件中,默认值为false。但我希望如果用户没有选中remember_me复选框,那么它应该设置为true。我在网上搜索过,发现了这个。但它没有帮助。关闭并重新打开浏览器后,会话仍处于活动状态(即使我已取消选中该复选框)

if ($this->input->post('remember_me')==null) {
                    $this->session->sess_expire_on_close = TRUE;
                 }

1 个答案:

答案 0 :(得分:1)

在最新版本的CodeIgniter中,关闭浏览器时会话的到期时间在config.php文件(/application/config/config.php)中设置如下:

$config['sess_expiration'] = 0;

会议部分上方的评论对此进行了解释:

  

| 'sess_expiration'   |   |您希望会话持续的SECONDS数。   |设置为0(零)表示浏览器关闭时到期。

根据用户复选框更改该变量应该可以解决问题。

要在控制器上更改它,您应该阅读此内容。

https://www.codeigniter.com/userguide3/libraries/config.html

希望它有所帮助。