如何在php中保持会话直到我点击退出按钮?

时间:2015-02-19 09:41:38

标签: php session

如何实现长时间保持会话。

示例: 如果我登录页面并在一段时间后(比如5小时)会话自动关闭。在我按下注销按钮之前如何让它活着。

2 个答案:

答案 0 :(得分:1)

使用

ini_set('session.gc_maxlifetime', <seconds>);

在使用会话的php脚本中

当您是服务器管理员时,或者在php.ini中增加该值。但请注意,这是服务器范围的。

要使项目/目录成为本地,您还可以为项目创建一个.htaccess文件,其中包含:

php_value session.gc_maxlifetime <seconds>

但这可能受到服务器的AllowOverride设置的限制

答案 1 :(得分:0)

我的建议是使用cookies(在网站上有免责声明!)。 尝试这样的事情,其中​​time()+60*60*24*100代表cookie的有效性,以秒为单位。

重要提示:为了让这项工作与最新的Chrome更新一起使用,请不要忘记最后一个NULL参数!

setcookie("your_cookie_name", $session, time()+60*60*24*100,'/', NULL);

然后,为了使用cookie,只需阅读它并将其保存在新的会话中:

if(!isset($_SESSION['your_parameter_name']) $_SESSION['your_parameter_name'] = $_COOKIE['your_cookie_name'];