PHP で次のコードを実行すると、5 分間操作を行わないとユーザーがログアウトされることがわかっています。
$timeout = 5*60; // Set timeout minutes
$logout_redirect_url = "index.php"; // Set logout URL
if (isset($_SESSION['start_time'])) {
$elapsed_time = time() - $_SESSION['start_time'];
if ($elapsed_time >= $timeout) {
session_unset();
session_destroy();
header("Location: $logout_redirect_url");
}
}
$_SESSION['start_time'] = time();
現在のコードの変更を実装し、次のようなことをしたい:
- 自動ログアウトまでの残り時間が 3 分になった時点でユーザーがログアウトしたと仮定します (2 分間操作を行わなかった後、時間が再開されないと仮定します)。DB (MySQL) に保存することで、ユーザーの残り時間を追跡します。その後、彼が再度ログインしてから同じ 3 分間から減少を開始します。これを行うにはどうすればよいですか?