检测用户是否刷新页面

时间:2018-09-22 04:12:58

标签: php

如何检测用户是否使用PHP刷新了页面?

我尝试了$pageWasRefreshed = isset($_SERVER['HTTP_CACHE_CONTROL']) && $_SERVER['HTTP_CACHE_CONTROL'] === 'max-age=0';

但这对我不起作用,因为我没有缓存。

这对我有用:

$pageWasRefreshed = isset($_SERVER['HTTP_CACHE_CONTROL']);

if($pageWasRefreshed ) {
  // Page was refreshed
  }
 else {
    // Page wasn't refresh
}

用这种方法有没有水结石?

2 个答案:

答案 0 :(得分:1)

您可以通过多种方式执行此操作:

  1. 第一次设置会话,然后检查是否设置了会话。

  2. 在MySQL数据库中插入客户端IP地址,并检查每个请求,以查看用户是否曾经访问过。

现在,您已经创建了自己的逻辑,并且Google如何实现这种方式 我建议您使用第二种解决方案。

答案 1 :(得分:1)

第一次有人访问该页面时设置cookie。因此,刷新时检查cookie是否存在,如果是,则刷新页面。

if (isset($_COOKIE['token'])) 
{
  //The page is refeshed,
} 
else 
{
  //first time user, set cookie.
  setcookie('token');

}