我使用此代碼閒置10秒後結束會話:銷燬會話PHP
ini_set('session.gc_maxlifetime', 10);
session_start();
if (isset($_SESSION['LAST_ACTIVITY']) && (time() - $_SESSION['LAST_ACTIVITY'] > 10)) {
session_unset();
session_destroy();
}
$_SESSION['LAST_ACTIVITY'] = time();
它的工作原理,只有當我不活動10秒後刷新頁面。如果我不刷新頁面或關閉瀏覽器,會話永遠不會被銷燬。有人可以幫我解決這個問題嗎?
您需要每隔10秒觸發一次AJAX請求才能檢查此問題。每8天一次 – fire
..您可以遲到刷新會話的一生。 –
@fire您需要在javascript中的每個操作(活動)之後設置一個超時值,當用戶執行某些操作時將其清除,並且只在定時器耗盡並且想要銷燬會話時觸發ajax請求。 – jeroen