我有一个用户系统,我使用cookie让它们在1小时不活动后自动注销,但只有当客户端刷新页面时才会更新数据库行。到目前为止,这是我的代码:
train(east1)
我现在要问的是,如果有任何方法可以在1小时不活动后将if(isset($_SESSION['username'])) {
$activeUser = $_SESSION['username'];
if(isset($_COOKIE['active'])) {
setcookie('active', $activeUser, time() +3600);
} else {
$makeOffline = $DB->query("UPDATE users SET user_loggedin = '0' WHERE user_id = '".$dbid."'");
header("location: ".$site_url."/logout.php");
}
}
设置为0,而客户端不必刷新页面?
答案 0 :(得分:1)
更好的方法是:
将活动时间存储到数据库中。
在此用户刷新或执行某些操作后更新该活动时间。
因此,如果此用户仍然在线或不基于记录+ 1小时,您就可以获得。