制作我自己的网站分析

时间:2012-05-20 14:13:43

标签: php sql analytics

我认为Google Analytics不是获取准确数字的最佳方式,因为在浏览器中未启用JavaScript的用户不会被计算在内。因此,我想自己制作自己的Anylytics。

我有一张表,用于记录用户的IP地址,页面URL和日期/时间。

然后我有一个位于网站每个页面底部的脚本,然后运行SQL查询将数据提交到数据库中。

这是剧本。

$page_viewed = mysql_real_escape_string($_SERVER['REQUEST_URI']);
if (!empty($_SERVER['HTTP_CLIENT_IP'])) {
     $ip=$_SERVER['HTTP_CLIENT_IP'];
} elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
     $ip=$_SERVER['HTTP_X_FORWARDED_FOR'];
} else {
     $ip=$_SERVER['REMOTE_ADDR'];
}
$ip = mysql_real_escape_string($ip);
mysql_query("And then do the sql query.... ");

由于你们大多数人都是体验开发人员,我想知道你们的脚本或需要修改的任何内容是否有任何改进。

4 个答案:

答案 0 :(得分:2)

这似乎是一个坏主意...通常情况下,分析是指当用户不支持javascript时,他们的浏览器会解析html标记中包含的内容。通常在这些中您可以包含单个像素图像或类似的东西(图像的目的是调用您上面给出的代码)。使用此请求获取有关没有javascript功能的客户端的信息,而不是将每个人都放在同一条船上。

答案 1 :(得分:1)

如果您正在使用Apache,则无论如何都会在您的日志文件中记录这些内容。您可以使用类似http://awstats.sourceforge.net/的内容来分析它们。

如果您拥有值得分析的无JS启用流量,那么使用MySQL和PHP进行记录将会破坏您的服务器。

答案 2 :(得分:0)

正如上面提到的@Blowski,有更好的选择。我过去曾使用Mint,这是一项令人难以置信的服务。它是用PHP编写的,既美观又容易理解。

我鼓励您花一些时间查看feature highlights以及screencasts and screenshots,然后再花更多时间重新发明轮子 - 您的时间很宝贵。

答案 3 :(得分:0)

因为浏览器缓存和javascript,你会发现日志文件分析也不是100%准确。结合日志分析和页面标记是大多数网站的最佳选择。我过去几年都使用了Nihuo和谷歌分析,它们对我很有帮助。