2017-02-22 55 views
0

我使用cakephp創建網站。在我登錄(谷歌瀏覽器)我的aplicaion後,無需註銷,我就可以在另一個瀏覽器(Mozilla Firefox)中打開同一個會話。會話在跨瀏覽器中工作,如果我不從wesite註銷php

如何在這種情況下處理會話。

+0

會話關閉在這裏,我能夠與會話ID –

+0

你做錯事的幫助下訪問會話。會話將無法跨越瀏覽器,除非它們共享相同的cookie和會話(不正常) – bansi

+0

在我的瀏覽器(Chrome和Mozilla)中,Cookie保存的是相同的登錄細節。 –

回答

0

我會檢查你的cookie時間。如果您不設定cookies來記住您的登錄時間,那麼當瀏覽器關閉時它們將過期。 我會誠實地設置餅乾一些體面的時間取決於它的用途。許多人關閉瀏覽器意外。當您使用session_destroy();

//if is logged in 
$date_of_expiry = time() + 60 ; 
setcookie("userlogin", "anonymous", $date_of_expiry); 
//another example 
setcookie("email-".str_replace(".","_",$_SERVER['SERVER_NAME']),$email,$time_minutes,"/",$_SERVER['SERVER_NAME'],0); 

http://php.net/manual/en/function.setcookie.php

http://php.net/manual/en/book.session.php

+0

當我第一次登錄(谷歌瀏覽器)我的應用程序時,我在控制檯(在這裏我沒有從谷歌瀏覽器登出)複製會話ID(例如,會話Id = bj3ptts05e9e0qh0a6i4fqqaa0),然後在另一個瀏覽器中打開相同的應用程序Firefox ,並在控制檯中從Cookie中編輯會話ID以替換複製的會話ID。然後,我可以在Firefox瀏覽器中看到我的儀表板。 –

+0

你想讓你的會議關閉嗎?我沒有看到問題... – DarkSideKillaz

+0

我解決了問題我自己,登錄時我使用用戶代理(在Google Chrome中)保存會話變量。同時在其他瀏覽器(Mozilla Firefox)中打開應用程序,通過編輯它的瀏覽器的檢查用戶代理的會話ID。它只是不允許使用相同的會話ID繼續會話。 - 感謝每一位。 –