PHP自动注销,无需刷新页面

JOB*_*JOB 0 html javascript php ajax jquery

我正在用PHP,JavaScript和HTML编写一个项目.当用户闲置1分钟时,我已成功完成自动注销.但问题在于我必须刷新页面才能执行它并将我注销.

有人可以帮助我,以便立即1分钟结束,用户空闲,代码将被执行,它将带我到登录页面,而我没有刷新它?

这是我的代码:

// check to see if $_SESSION['timeout'] is set
if(isset($_SESSION['timeout']) ) {
$session_life = time() - $_SESSION['timeout'];
if($session_life > $inactive)
    {  


 echo"<script type='text/javascript'> 
window.alert('Your Session got Expired');
</script>";
header("Location: logout.php");
}
}

$_SESSION['timeout'] = time();
//Continuation of other codes
Run Code Online (Sandbox Code Playgroud)

voi*_*oid 6

我想最好的实现方法是使用JS和PHP的组合

check.php

if(isset($_SESSION['timeout']) ) {
$session_life = time() - $_SESSION['timeout'];
if($session_life > $inactive) echo "0";

else echo "1";
}

$_SESSION['timeout'] = time();
Run Code Online (Sandbox Code Playgroud)

.js文件

$(document).ready(function(){
  setTimeout(function(){
        $.get("check.php", function(data){
        if(data==0) window.location.href="logout.php";
        });
    },1*60*1000);
});
Run Code Online (Sandbox Code Playgroud)

或者只是将其包裹起来,setInterval(function(){},1*60*1000)而不是每隔一分钟setTimeout()就要检查一次.

$(document).ready(function(){
setInterval(function(){
        $.get("check.php", function(data){
        if(data==0) window.location.href="logout.php";
        });
    },1*60*1000);
});
Run Code Online (Sandbox Code Playgroud)