0
我試圖爲我的用戶尚未見過的內容顯示[NEW]標記。如何爲使用Cookie的用戶標記新內容
遺憾的是大多數用戶都是客人,而我不希望寫在數據庫中的每個IP和存儲最後訪問時間。
所以我想我可以用餅乾做到這一點,這裏是帽子我寫道:
if ($_SERVER['SCRIPT_NAME'] == "/index.php" || $_SERVER['SCRIPT_NAME'] == "/browse.php"){
if (!$CURUSER)
setcookie("lastbrowse", time(), time()+3600*24);
}
好,我能勝任這份例如一些地區更容易,但是這是做的伎倆部分爲客人。
Cookie設置正常,我得到cookie中的時間戳。
我做了檢查後:
if (strtotime($row["added"]) > $_COOKIE["lastbrowse"])
$new = " <span style='color:#002F4E;font-weight:bold'>[NEW]</span>";
因此,如果消息是在上次訪問後添加,用戶通過標題看到[NEW]標籤。
問題是我不知道我不能更新餅乾,每次用戶刷新頁面,我只能設置新的cookie一旦這個已過期。
我該如何完成[NEW]標記?
我不確定這是完全正確的。您肯定可以在cookie過期之前更新它。但是,您應該在setcookie()後立即更新$ _COOKIE數組。 這樣,一旦呈現,它採用了最新的價值,而不是當腳本是由瀏覽器 – Sleavely 2013-02-28 15:39:22
搞怪它沒有更新啓動時存在的一個,然後我刪除了cookie,並沒有它更新所有的時間。由於某種原因必須被鎖定。謝謝 – Treat 2013-02-28 16:48:35