作者m061i6 (超級牛)
看板PHP
標題[請益] 記住用戶上次瀏覽頁面
時間Wed Aug 24 03:21:25 2016
大家好
小弟最近被一個案子卡住
業主希望用戶瀏覽網站時可以記住他最後一次的瀏覽頁面 關閉視窗等下次再造訪同域名下的頁面時能自動轉到上次記錄的頁面
我用session 來記錄
每個頁面做判定該session是否存在
有就代表他之前來過並且!=當前url
那就自動導向到記錄的頁面
看起來可行但有問題
1.怎麼判定使用可以記是初次
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.229.23.144
※ 文章網址: https://webptt.com/m.aspx?n=bbs/PHP/M.1471980088.A.493.html
1F:→ lucky1lk: 資料庫? 每進一次頁面 把頁面ID和時間放進資料庫裡? 08/24 07:48
2F:→ lucky1lk: 還有使用者ID 08/24 07:49
3F:→ travelerX: 用session 在瀏覽器完全關掉就會不見 ,用cookie 才會 08/24 07:50
4F:→ travelerX: 保留,但用cookien的話要檢查server http only 設定以 08/24 07:50
5F:→ travelerX: 及r 08/24 07:50
6F:→ travelerX: redirect 前檢查cookie 保留的url 是否合預期,避免被 08/24 07:50
7F:→ travelerX: 竄改 08/24 07:50
8F:→ travelerX: 除非client一直保留session id , 並打開網頁就傳sessio 08/24 07:54
9F:→ travelerX: n id ,才找的回來資料 08/24 07:54
10F:→ travelerX: 1.用cookie 紀錄目前瀏覽網址 08/24 08:00
11F:→ travelerX: 2.初次進入,轉跳後增加session去記錄已轉跳 08/24 08:00
12F:→ travelerX: 3.判斷session存在則不轉跳 08/24 08:00
13F:→ travelerX: 4.完全關閉瀏覽器後因瀏覽器cookie存的session id 不同 08/24 08:00
14F:→ travelerX: ,所以不會有session紀錄,會被當成初次 08/24 08:00
15F:推 travelerX: 如果是關閉瀏覽器tab ,可以搭配 js 的 window.onbefor 08/24 08:07
16F:→ travelerX: eunload function ,以ajax 通知server 要關閉,刪除ses 08/24 08:07
17F:→ travelerX: sion,下次開頁面一樣可以轉跳(不過ajax 要加上async:fa 08/24 08:07
18F:→ travelerX: lse 08/24 08:07
19F:→ gname: 用cookie 換一台電腦不也GG了? 08/24 08:49
20F:→ m061i6: 感謝各位 我再試試 08/24 09:10
21F:→ MOONRAKER: 誰叫他要換電腦的 |D 當然是看業主要怎樣 08/24 09:59
22F:→ Kenqr: 用local storage記憶 08/24 10:06
23F:→ travelerX: 而且也要看有沒會員系統吧xd 08/24 11:40
24F:→ m061i6: 業主希望非登入狀態也能記錄 08/24 12:44