我有一个客户端jquery脚本,在5分钟不活动后将用户注销。但问题是用户导航离开而没有注销会话保持活动状态。如果用户关闭浏览器不应该破坏会话,因为会话在浏览器打开或用户注销期间保持活动状态?
任何这就是我拥有的
(function($){
$(document).bind("idle.idleTimer", function(){
document.location = "orders.php?action=logoff&session=timeout";
});
//var minute = 60000; //1 minute is 60,000 miliseconds.
var minute = 300000; //5 minutes
var timeout = minute;
$.idleTimer(timeout);
})(jQuery);
如果用户导航,我该如何实现服务器端?我正在考虑使用cron,但那时候这不是正确的方式(即时思考,但后来可能是错误的)
我读过这篇文章 User Inactivity Logout PHP我不知道如果用户导航
,会话仍然会如何生效答案 0 :(得分:2)
导航必然不会使会话失效,它会关闭浏览器。
答案 1 :(得分:1)
Sarmen,最简单的方法是使用php会话垃圾收集来满足您的需求:
http://www.php.net/manual/en/session.configuration.php#ini.session.gc-maxlifetime
300s将满足您的要求。
答案 2 :(得分:1)
您需要做的就是在 orders.php 文件中添加一些代码。
您需要做的是使用一些if语句检查您的$_GET
操作和会话变量。
如果满足这两个要求,那么您只需要使用session_destroy();
如果您想使用header();