我想在我的php网站上显示完全没有访问者,我发现一些显示这样的计数器的html / php脚本
<!-- Start of SimpleHitCounter Code -->
<div align="center"><a href="http://www.simplehitcounter.com" target="_blank"><img src="http://simplehitcounter.com/hit.php?uid= " border="0" height="18" width="83" alt="web counter"></a><br><a href="http://www.simplehitcounter.com" target="_blank" style="text-decoration:none;">web counter</a></div>
<!-- End of SimpleHitCounter Code -->
我在localhost中尝试了它,问题是如果我刷新同一页面它继续添加计数如何获得每位访客的唯一计数请帮助我,我在搜索时找不到任何合适的来源
答案 0 :(得分:1)
使用 IP 检查您是否正在打开一个页面并使用唯一IP 一次点击计数器的增量。
第一次意味着如果您在点击计数器Db中打开一个带有您的IP if it is unique
的页面,然后将点击计数器增加,并将您的IP存储到DB中。然后,对于每个页面刷新,您将检查当前知识产权是否存在。如果不存在则增加,如果它忽略它。
答案 1 :(得分:1)
这取决于唯一的访客。一种解决方案是检查IP地址,但是您可能有多个人在wifi路由器后面使用不同的计算机,如果您希望所有这些计算机都是唯一的,那么使用cookie会更好。
Cookie的另一个优点是,您可以轻松跟踪重复访问者,而无需在服务器上存储IP地址数据库。
答案 2 :(得分:1)
使用表格ips
创建数据库,并向其中添加id
,ip
,lasthit
列。如果用户访问该网站(一个匹配/日期)
<?php
$pdo = new PDO('mysql:host=localhost;dbname=myDatabase','username','password'); $time = date("Y-m-d");
$query = "INSERT INTO ips (ip, lasthit) VALUES (?,?) WHERE lasthit <> ?";
$smt = $pdo->prepare($query);
$smt->execute(array($_SERVER['REMOTE_ADDR'],$time, $time));
答案 3 :(得分:0)
您可以拥有一个数据库表,列值应为id,total_count和ip地址。因此,如果您再次找到相同的IP地址,请不要增加计数。
如果要在一天内从一个系统增加一次计数,可以再添加一个名为last_hit_date的列。使用它来验证ip是否已经点击了当天。