顯示廣告
隱藏 ✕
看板 Knuckles_note
作者 Knuckles(阿德)
標題 [PHP] session變數顯示異常
時間 2010年03月31日 Wed. AM 04:28:27


呼 好不容易抓出的 bug 來記錄一下

我利用 $_SESSION['position'] 來記錄使用者在站上的位置

可是很奇怪,有時候從 看板分類 回到主選單 再到使用者名單時
位置應該是 /主選單/使用者名單
可是有時候會變成 /主選單/看板分類/使用者名單

在主選單的時候 session 記錄的確是 /主選單 而已
為什麼進入使用者名單後,會莫名奇妙的又加上了看板分類呢?
而且是有時候正常,有時候異常

經過不停的測試後發現,只有用 js 跳出看板分類才會這樣
直接點連結或打網址的話就正常了

所以問題應該是在看板分類的回到上一層的 js function有問題
檢查後發現原來執行 self.location.href = ... 跳頁後
又多執行了一個 ajax 更新頁面的 function updatePage()

所以跳頁回 主選單時 session 的確是 /主選單 而已
但其實 updatePage() 又接著將 session 改為 /主選單/看板分類 了
可是如果跳頁執行的夠快的話,updatePage()會來不及執行
所以才會造成有時正常有時異常的情形

之前好像也有過類似的問題
按 ctrl+u 跳到使用者名單,位置會像是回上一層後再進使用者名單
原來 u 也是回上一層的快速鍵,沒有判斷按了 ctrl 的情形
所以才變成回上層後再進使用者名單


--
※ 來源: DISP BBS (http://disp.cc)
※ 作者: Knuckles  來自: 118.166.114.111  時間: 2010-03-31 04:28:27
※ 看板: KnucklesNote 文章推薦值: 0 目前人氣: 0 累積人氣: 358 
r)回覆 e)編輯 d)刪除 M)收藏 ^x)轉錄 同主題: =)首篇 [)上篇 ])下篇