如何在瀏覽器關閉後繼續CakePHP 1.3會話?瀏覽器關閉後繼續CakePHP會話
回答
您必須將其轉換爲cookie,因爲在瀏覽器關閉時會自動刪除會話。見this。
當瀏覽器關閉時Cookie不會被破壞。
設置$this->Session->cookieLifeTime = $timeToLive;
,其中$timeToLive
是您希望會話持續的秒數。這是總長度,所以如果瀏覽器窗口關閉,它不會被刪除,但請注意,從瀏覽器關閉時開始,它是而非。
記錄在哪裏? – sholsinger 2010-11-11 00:29:55
@sholsinger - 在我的答案中點擊示例代碼行。 – Iiridayn 2010-11-12 19:45:12
我不得不說,這可能是最容易實現的。道具,michaelc。這並不意味着我認爲與源文件的鏈接是「文檔」。事實是,CakePHP的文檔沒有列出會話類的公共屬性,這是不幸的。 – sholsinger 2010-11-12 22:23:26
似乎有辦法通過重寫的配置值增加會話的生存時間。 (在PHP級別 - 通過CakePHP Manual)。使用下面的代碼,您可以將0更改爲希望會話生存的秒數。
2周// Cookie is now destroyed when browser is closed, doesn't
// persist for days as it does by default for security
// low and medium
ini_set('session.cookie_lifetime', 0);
實施例:
ini_set('session.cookie_lifetime', 60 * 60 * 24 * 14);
上面代碼段將被寫入到在app/config
創建的配置文件。爲了讓CakePHP的閱讀在初始化該文件添加以下內容app/config/core.php
Configure::write('Session.save','my_session');
哪裏my_session
是您的配置文件的名稱。
- 1. 即使我關閉瀏覽器,繼續進行會話
- 2. 關閉瀏覽器後保持會話
- 3. .NET會話 - 持續會話,即使用戶關閉瀏覽器
- 4. HTML5中的離線webapps - 關閉瀏覽器後繼續?
- 5. 在瀏覽器關閉後繼續執行存儲過程
- 6. CakePHP在瀏覽器上刪除特定會話關閉
- 7. 關閉瀏覽器會話丟失
- 8. 關閉瀏覽器清除PHP會話
- 9. 會話cookie不會在瀏覽器上關閉關閉
- 10. CakePHP cookies在瀏覽器關閉後不會持久
- 11. 谷歌瀏覽器關閉瀏覽器後保持會話變量
- 12. 瀏覽器關閉後Chrome瀏覽器中的會話變量仍然存在
- 13. javascript-ajax-關閉JAVA中關閉瀏覽器的會話
- 14. 關閉瀏覽器或標籤時關閉Asp.Net會話
- 15. 在瀏覽器上關閉會話關閉Codeigniter 3
- 16. Spring Roo - 在瀏覽器關閉時關閉會話
- 17. Laravel關閉瀏覽器關閉會話不在Chrome中工作
- 18. 如何在瀏覽器中關閉一個會話關閉Django
- 19. GWT:如何在關閉瀏覽器時關閉會話
- 20. 關閉瀏覽器/選項卡上的會話關閉
- 21. 在瀏覽器上關閉會話關閉
- 22. 在瀏覽器中關閉會話值關閉
- 23. 用戶在joomla關閉瀏覽器後記得會話
- 24. 瀏覽器關閉後驗證/會話cookie刪除
- 25. 爲什麼在瀏覽器關閉後會話不能清除?
- 26. 即使瀏覽器關閉後,是否可以保持會話?
- 27. 在Firefox瀏覽器關閉後新的PHPSESSID恢復PHP會話
- 28. 如何在瀏覽器關閉後保留會話?
- 29. 關閉瀏覽器後保持會話生效。
- 30. 關閉瀏覽器後保持php會話
看到這個http://www.captain.at/howto-php-sessions.php。無論設置了多久,瀏覽器關閉後會話都會被銷燬。這使它與cookies不同。如果我再犯錯,請糾正我,並引用您的來源。 – Skaty 2010-11-07 13:14:44
是的,Skaty說的是要走的路。您需要將會話數據轉換爲Cookie數據。 – Ashok 2010-11-09 08:13:05
技術上它已經是一個cookie了。當瀏覽器窗口關閉時,它會被丟棄,因爲cookie的生存期爲0秒。 – sholsinger 2010-11-11 00:36:57