使用 php 创建点击计数器的最佳方法是什么,它可以使用简单的图像嵌入到任何外部站点/论坛。例如<img src="http://site.com/counter.gif"></img>
并将 IP 地址和 http referrer 等访问者信息保存到 MySQL 数据库?
找不到关于此的任何信息...甚至可以这样做吗?
感谢您的帮助。
最佳答案
您可以查看 AWSTATS http://awstats.sourceforge.net/
我希望有一种简单的方法可以连接到谷歌分析数据,然后使用 imagemagic 或类似工具生成计数器图形。 他们确实为此提供了一些第 3 方应用程序 - 但在我看来,它们对于一个简单的计数器来说意义重大 - 或者只是非常丑陋。
AWStats 将解析日志文件,这也可以向您显示过去的统计数据。
您还可以创建一个非常小的代码来将 IP 地址保存到访问者表中,然后在计算唯一访问者时对照该表进行检查。并且可以使用 cronjob 每天更新几次反图像(可能不需要每次访问都更新)。
获取IP:
function checkIP()
{
if ( getenv( 'HTTP_CLIENT_IP' ) )
{
$ip = getenv( 'HTTP_CLIENT_IP' );
}
elseif( getenv( 'HTTP_X_FORWARDED_FOR' ) )
{
$ip = getenv( 'HTTP_X_FORWARDED_FOR' );
}
elseif( getenv( 'HTTP_X_FORWARDED' ) )
{
$ip = getenv( 'HTTP_X_FORWARDED' );
}
elseif( getenv( 'HTTP_FORWARDED_FOR' ) )
{
$ip = getenv( 'HTTP_FORWARDED_FOR' );
}
elseif( getenv( 'HTTP_FORWARDED' ) )
{
$ip = getenv( 'HTTP_FORWARDED' );
}
else
{
$ip = $_SERVER['REMOTE_ADDR'];
}
return $ip;
}
有关其他访问者信息,请查看 $_SERVER 选项和其他选项。
http://www.php.net/manual/en/reserved.variables.server.php
HTTP_USER_AGENT
HTTP_ACCEPT_LANGUAGE
HTTP_REFERER
REQUEST_URI
此外,如果有大量网站嵌入计数器,您可以只获取计数本身。 (每个使用它的网站都可以用一些 css 等来显示它。)
关于php - 使用基于图像的点击计数器获取访客信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7470823/