2015-12-25 31 views
1

我使用SimpleUsers類並創建了一個基於數據庫的登錄系統。 Here is SimpleUsers on Github如何在Windows關閉時終止PHP會話?

這是我的問題: 如何終止窗口關閉PHP會話?當窗戶關閉時,登錄用戶的會話尚未打開。我怎樣才能關閉它? 我試過使用

session_set_cookie_params(0); 

但它沒有幫助。 請幫幫我。

+0

這可能會幫助 http://stackoverflow.com/questions/8311320/how-to-change-the-session-timeout-in-php – Vojko

回答

1

我假設你所說的「windows」是指瀏覽器/瀏覽器窗口的標籤。

簡單的answear是:你不能,除非用戶請求。您可以使用「onclose」方法嘗試某種JavaScript代碼,該方法會將請求發送到您的網站以關閉會話。 缺點這種方法的是當某人有2個選項卡,並在最後一個被關閉,他將被註銷

只有當有人點擊退出按鈕時,才應銷燬會話。

編輯評論

如果你想確保(綁定)會議,IP,您可能希望在用戶$_SESSION IP誰開始會話存儲和終止會話,如果IP改變

if($_SESSION['user_ip'] !== $_SERVER['REMOTE_ADDR']){ 
    // do the code to terminate session. 
} 
+0

不,您的會話會在您關閉瀏覽器時自動清除。 –

+0

在瀏覽器端,是。在服務器端它仍然存在。 – Grzegorz

+0

但問題是,它使用cookie還是會話。 –

相關問題