我有PHP的會議,我可能有問題是,如果很長一段時間我不使用該應用程序,如果我刷新網絡瀏覽器,我突然在所有$ _SESSION中獲得聲明。我想知道是否有可能如果我長時間沒有使用網頁,如果我刷新頁面,$ _SESSIONs保持不變?
我知道@符號可以使用,但只是爲了不顯示錯誤信息?我只是不想讓它停止會議。
感謝
我有PHP的會議,我可能有問題是,如果很長一段時間我不使用該應用程序,如果我刷新網絡瀏覽器,我突然在所有$ _SESSION中獲得聲明。我想知道是否有可能如果我長時間沒有使用網頁,如果我刷新頁面,$ _SESSIONs保持不變?
我知道@符號可以使用,但只是爲了不顯示錯誤信息?我只是不想讓它停止會議。
感謝
你很可能得到通知描述什麼是你的代碼錯誤。考慮糾正你的代碼,所以你不會收到通知,而不是避免錯誤出現的情況。
那麼發生了什麼讓我們說你登錄到一個頁面輸入用戶名和密碼,這些詳細信息存儲在會話中。但經過一段時間後,如果您點擊刷新按鈕讓5個小時後說,那麼您可以在這些會話上獲得通知。我可以用什麼方法修復代碼?任何示例 – user1394925
您可以檢查會話是否確實存在於會話中。如果你只是簡單地檢查一個值是否爲真(例如'if($ _SESSION ['userId']){//做某事...'),那麼可以安全地取消通知('@ $ _ SESSION ['userId 「]');在更復雜的情況下,您應該做出適當的努力來驗證'$ _SESSION'容器的狀態。 – lanzz
@ user1435599在大多數情況下,isset是你的朋友。 :-) http://php.net/manual/de/function.isset.php – Oliver
如果要延長會話的長度,請嘗試ini_set('session.gc_maxlifetime', '3600');
,其中「3600」是希望會話持續的秒數。如果你想讓這個會議永久持續下去,我會建議在那裏放一個非常大的數字。
這些不是「解析錯誤」的肯定。 – mario
http://www.php.net/manual/en/session.configuration.php#ini.session.gc-probability –
通知對不起,不解析錯誤 – user1394925