2016-12-12 31 views
-1

在我們網站的管理頁面的開始,我們測試是否設置了$ _SESSION變量admin,如果不是,我們將用戶重定向回主頁面與此代碼:

session_start(); 
if (!isset($_SESSION['admin'])) 
{ 
echo "<script>window.location='domain';</script>"; //domain is redacted 
die(); 
} 

管理員帳戶已經經歷了重定向,尤其是登錄後。所以,我創建了一個文件,它回顯了會話的var_dump並進行了調查,結果發現管理變量實際上已設置,因此錯誤不應該發生。有沒有人有任何想法可能會導致這種情況,特別是直接在登錄和會話變量設置之後?注意:我已經檢查過$ _SESSION設置頁面上是否有任何內容發送到HTML,並且像我說的那樣,變量已設置。

編輯:這是在代碼

+0

有沒有一個註銷頁面會話被破壞? –

+0

是的,有,但只有當用戶在其頁面上點擊註銷時才能訪問。我只是再次嘗試另一次測試,這次它工作得很好 - 不一致性很麻煩,因爲我不能總是重現問題。 @ Fred-ii- –

+0

歡迎來到StackOverflow。請閱讀[如何提出一個好問題](http://stackoverflow.com/help/how-to-ask)上的幫助主題。我們需要能夠重現此問題以幫助您。 –

回答

0

這個問題似乎在登錄後進行完全發生之初對於其他人誰也有類似的問題,一定要使用session_unset();以去除任何剩餘的信息。以前的瀏覽會話。感謝所有人的幫助。