使用php创建点击计数器的最佳方法是什么,可以使用简单的图像嵌入到任何外部网站/论坛。例如<img src="http://site.com/counter.gif"></img>
并将访问者信息(如IP地址和http引用者)保存到MySQL数据库中?
找不到关于此的任何信息......是否可以这样做?
感谢您的帮助。
答案 0 :(得分:2)
您可以查看AWSTATS http://awstats.sourceforge.net/
我希望有一种简单的方法可以连接到谷歌分析数据,然后用imagemagic或类似的方式生成计数器图形。 他们确实有一些第三方应用程序 - 但在我看来,他们在一个简单的计数器的位置 - 或者只是简单的丑陋。
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等显示它。)。