我想知道实际网页已加载或刷新的时间。
我试过http请求,但没有这样的信息。
页面加载后,ajax 函数每 60 秒检查一次新消息。我只需要显示新的(页面加载后发布的)。
提前非常感谢。
时间戳每条消息。在您的 AJAX 函数中,发送您已有的最后一条消息的参数。只返回比那更新的消息。例如,您点击的 AJAX URL 可能类似于/get_messages.php?newer_than=1343041382
.
假设您将消息发送的时间存储在数据库中,并将其存储为时间戳,您可以使用如下内容:
加载页面时,您可以将当前时间保存为:
$page_load_time = time();
然后只需使用 post 或 get 将 $page_load_time 发送到使用 AJAX 加载的文件,然后在使用 AJAX 加载的 PHP 文件中,您可以执行 SQL 查询来获取所有新消息。也许是这样的:
$sql = "SELECT * FROM `messages` WHERE `time` > '{$page_load_time}'
正如@DaveRandom 提到的:
您只需将 time() 的结果存储在 $_SESSION 中 - 例如 $_SESSION['lastPoll'] = time();。然后每次轮询服务器以获取新消息“SELECT * FROM messages WHERE message_time >”.$_SESSION['lastPoll'],并使用新的 time() 更新存储的值