ユーザーが10分間ページを変更しない場合、ユーザーをログアウトさせるこのコードがあります。
$inactive = 600;
if(isset($_SESSION['timeout']) ) {
$session_life = time() - $_SESSION['timeout'];
if($session_life > $inactive) {
header("Location: logout.php");
}
}
$_SESSION['timeout'] = time();
ご覧のとおり、これは非常に簡単です。保護されているすべてのページの上部にこの関数を含めます。スクリプトが10分間実行されない場合、次にページを更新すると、ユーザーはログアウトスクリプトに送られます。
しかし、それが問題です。$ session_life> $ inactiveがtrueになった後、ユーザーがログアウトするには、スクリプトを再度実行する必要があります。これが真実になったらすぐにその人をログアウトさせる必要があります。
物事が複雑になりすぎずにこれを行う方法はありますか?(つまり、AJAXを使用していません)