【发布时间】:2017-04-17 06:01:47
【问题描述】:
我想为一个 PHP 网站制作一个独特的访问计数器。我不想通过刷新页面来增加数量。
这不像简单的访问计数器。我尝试了几个计数器,但它们通过刷新页面来增加计数。
有什么想法..?
【问题讨论】:
-
你尝试了什么??
-
轻松自在并使用谷歌分析
标签: javascript php web unique
我想为一个 PHP 网站制作一个独特的访问计数器。我不想通过刷新页面来增加数量。
这不像简单的访问计数器。我尝试了几个计数器,但它们通过刷新页面来增加计数。
有什么想法..?
【问题讨论】:
标签: javascript php web unique
如果您想手动完成,为您的网站设置计数器的最简单方法是使用会话。
首先,当您的网站链接打开时,启动一个会话并在 php 中注册一个计数器变量为 $_SESSION['count'] = 1,然后将其加一。
现在使用简单的 if-else 语句来检查 $_SESSION['count'] 值是 1 还是大于 1,如果 1 则通过 ajax 向服务器发送请求,以便在首次访问您的网站时存储该单个计数在您的数据库表中(意味着您只需更新数据库中表的列值)。
现在,如果用户关闭他/她的浏览器,那么会话将被自动销毁,否则如果您有登录类型访问您的网站,那么只需在检查“$_SESSION['count”的注册值的任何条件之前取消设置该会话变量']",因此不会生成任何请求来更新数据库中服务器的访问计数。
为了区分登录用户和访问者,只需使用另一个会话变量并使用它来确定是否设置 $_SESSION['count'] 变量。 我为您提供了一个代码 sn-p,以便您可以理解我要解释的内容。
<?php
session_start();
//Check logged in session variable if variable not set then execute
// following code block
if(isset($_SESSION['count']) {
if($_SESSION['count'] == 1)
//your ajax request to store visit count in db (executed only once)
$_SESSION['count']++;
} else {
$_SESSION['count'] = 1;
}
?>
我希望这个 sn-p 可以让您至少了解如何完成它。 谢谢你的期待..!!! :):)
【讨论】: