php - 跟踪用户 - 自定义 PHP/MySQL 网站分析

标签 php mysql analytics tracking

我经营着一个本地名录网站(比如 yelp/yell.com 等),需要向网站上列出的企业提供分析数据。

我需要跟踪以下内容:

1) 特定页面的访问者数量(即:Jim 的小部件被浏览了 65 次)

2)用户点击链接的次数(即:25个用户点击访问你的网站)

每次发生 Action 时,我只需将相关数字加一即可。

我希望能够将其分成日期范围,例如,过去 30 天、过去 12 个月、所有时间。

如何将这些数据存储在数据库中?我只需要理论,不需要代码!如果有人能解释存储这些信息的最佳方式,我将不胜感激。

例如,我是否使用一个表来记录日期,一个表来记录页面/链接,另一个表来记录用户数据(点击的链接/访问的页面)?到目前为止,我唯一的解决方案是每次发生这些操作之一时向数据库添加一个新行,这不会很好地扩展。

感谢任何可以提供帮助的人。

最佳答案

我不会重新发明轮子并使用已经可用的解决方案,例如 Piwik .它实际上可以读取您的普通网络日志以提供您要求的所有信息。

如果出于某种原因您仍然需要自定义解决方案,我不会在范围内保存跟踪数据,而是为每个单独的页面调用(您的普通博客提供的)使用准确的时间和 url 数据。累积数据应该在您的逻辑部分即时生成,例如通过 SQL View :

SELECT count(url),url
FROM   calllog
WHERE  calldate > NOW()-30days

关于php - 跟踪用户 - 自定义 PHP/MySQL 网站分析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11014643/

相关文章:

php - 使用单个查询更新多行

python - Django / python : catch MySQL IntegrityError

php - 将 PHP 结果放入 HTML 页面

php - 如何使用 Doctrine 在死锁后重试事务?

mysql - 获取前 5 名总结果

android - Android 中的 Google Analytics Referrer 问题

mysql - 在 MySQL 中索引和查询分析表的最佳方式

php - 使用 PHP 跟踪网络流量

php - 我如何(或可以)对一列的一行中的多个值进行 SELECT DISTINCT?

mysql - 使用 Zend Framework 切换到 MariaDB