[請益] 記住用戶上次瀏覽頁面

看板PHP作者 (超級牛)時間9年前 (2016/08/24 03:21), 編輯推噓1(1023)
留言24則, 6人參與, 最新討論串1/2 (看更多)
大家好 小弟最近被一個案子卡住 業主希望用戶瀏覽網站時可以記住他最後一次的瀏覽頁面 關閉視窗等下次再造訪同域名下的頁面時能自動轉到上次記錄的頁面 我用session 來記錄 每個頁面做判定該session是否存在 有就代表他之前來過並且!=當前url 那就自動導向到記錄的頁面 看起來可行但有問題 1.怎麼判定使用可以記是初次 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.229.23.144 ※ 文章網址: https://www.ptt.cc/bbs/PHP/M.1471980088.A.493.html

08/24 07:48, , 1F
資料庫? 每進一次頁面 把頁面ID和時間放進資料庫裡?
08/24 07:48, 1F

08/24 07:49, , 2F
還有使用者ID
08/24 07:49, 2F

08/24 07:50, , 3F
用session 在瀏覽器完全關掉就會不見 ,用cookie 才會
08/24 07:50, 3F

08/24 07:50, , 4F
保留,但用cookien的話要檢查server http only 設定以
08/24 07:50, 4F

08/24 07:50, , 5F
及r
08/24 07:50, 5F

08/24 07:50, , 6F
redirect 前檢查cookie 保留的url 是否合預期,避免被
08/24 07:50, 6F

08/24 07:50, , 7F
竄改
08/24 07:50, 7F

08/24 07:54, , 8F
除非client一直保留session id , 並打開網頁就傳sessio
08/24 07:54, 8F

08/24 07:54, , 9F
n id ,才找的回來資料
08/24 07:54, 9F

08/24 08:00, , 10F
1.用cookie 紀錄目前瀏覽網址
08/24 08:00, 10F

08/24 08:00, , 11F
2.初次進入,轉跳後增加session去記錄已轉跳
08/24 08:00, 11F

08/24 08:00, , 12F
3.判斷session存在則不轉跳
08/24 08:00, 12F

08/24 08:00, , 13F
4.完全關閉瀏覽器後因瀏覽器cookie存的session id 不同
08/24 08:00, 13F

08/24 08:00, , 14F
,所以不會有session紀錄,會被當成初次
08/24 08:00, 14F

08/24 08:07, , 15F
如果是關閉瀏覽器tab ,可以搭配 js 的 window.onbefor
08/24 08:07, 15F

08/24 08:07, , 16F
eunload function ,以ajax 通知server 要關閉,刪除ses
08/24 08:07, 16F

08/24 08:07, , 17F
sion,下次開頁面一樣可以轉跳(不過ajax 要加上async:fa
08/24 08:07, 17F

08/24 08:07, , 18F
lse
08/24 08:07, 18F

08/24 08:49, , 19F
用cookie 換一台電腦不也GG了?
08/24 08:49, 19F

08/24 09:10, , 20F
感謝各位 我再試試
08/24 09:10, 20F

08/24 09:59, , 21F
誰叫他要換電腦的 |D 當然是看業主要怎樣
08/24 09:59, 21F

08/24 10:06, , 22F
用local storage記憶
08/24 10:06, 22F

08/24 11:40, , 23F
而且也要看有沒會員系統吧xd
08/24 11:40, 23F

08/24 12:44, , 24F
業主希望非登入狀態也能記錄
08/24 12:44, 24F
文章代碼(AID): #1NlA8uIJ (PHP)
討論串 (同標題文章)
文章代碼(AID): #1NlA8uIJ (PHP)