在我单击注销按钮之前,如何在 php 中保持会话? [复制]
Posted
技术标签:
【中文标题】在我单击注销按钮之前,如何在 php 中保持会话? [复制]【英文标题】:How to maintain session in php until I click logout button? [duplicate] 【发布时间】:2015-04-20 14:21:12 【问题描述】:如何实现长时间保持会话。
示例: 如果我登录到一个页面并在某个时间(比如 5 小时)后会话将自动关闭。在我按下注销按钮之前如何让它活着。
【问题讨论】:
你需要设置一个cookie来保存会话:***.com/questions/12091951/… php.net/manual/en/book.session.php 【参考方案1】:使用
ini_set('session.gc_maxlifetime', <seconds>);
在使用会话的 php 脚本中
当您是服务器管理员时,或者在您的 php.ini 中增加该值。但请注意,这是服务器范围的。
要使其成为本地项目/目录,您还可以为您的项目创建一个 .htaccess 文件,其中包含:
php_value session.gc_maxlifetime <seconds>
但这可能会受到服务器的 AllowOverride 设置的限制
【讨论】:
【参考方案2】:我的建议是使用 cookie(网站上有免责声明!)。
尝试类似的方法,其中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'];
【讨论】:
以上是关于在我单击注销按钮之前,如何在 php 中保持会话? [复制]的主要内容,如果未能解决你的问题,请参考以下文章