Php ajax自动刷新页面上的会话超时
大家好,温柔一点,我是第一次登广告 我在一个基于php的网站上有一个页面,它使用基于AJAX的调用每隔5秒或10秒用一个数据表更新一个DIV标记。我工作的安全人员希望我确保用户在15分钟不活动后注销。 为此,我投入了大量资金Php ajax自动刷新页面上的会话超时,php,ajax,timeout,Php,Ajax,Timeout,大家好,温柔一点,我是第一次登广告 我在一个基于php的网站上有一个页面,它使用基于AJAX的调用每隔5秒或10秒用一个数据表更新一个DIV标记。我工作的安全人员希望我确保用户在15分钟不活动后注销。 为此,我投入了大量资金 <script type="text/javascript"> window.setTimeout("location=('/mysite/session_timeout.php');",900000); </script> setTimeout
<script type="text/javascript">
window.setTimeout("location=('/mysite/session_timeout.php');",900000);
</script>
setTimeout(“location=('/mysite/session_timeout.php');”,900000);
当然,问题是表的AJAX刷新正在“重置”超时计数器。。。
所以我的问题基本上是“有没有一种客户端方法可以减轻ajax调用,可以说是重置时钟,或者我需要用php的会话数组来解决这个问题并在其中隐藏值,或者有人有更好的方法?”
感谢大家提供的帮助。您可以存储该页面的开始时间并更新表格数据,而无需重新加载页面。检查开始时间并相应地销毁会话。您可以尝试类似的方法
$_SESSION['activity'] = time();
function check_if_logged_in() {
if(time() - $_SESSION['activity'] > 900) {
// Do redirect or take other action here
}
}
或者您可以使用jQuery插件。使用cookie进行检查。您找到解决方案了吗?我在我的项目中偶然发现了同样的情况,不知道如何解决这个问题