我正在尝试为我的用户尚未看到的内容显示 [NEW] 标记。
可悲的是,大多数用户都是客人,我不希望在数据库中写入每个 IP 并存储上次访问时间。
所以我想我可以用 cookie 完成这个,这是我写的帽子:
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,我只能在过期后设置一个新的 cookie。
我怎样才能完成 [NEW] 标签?