2012-05-20 30 views
1

我正在用php和mysql开发一个web应用程序。我在我的网站上有视频,用户可以上传他们的视频。用php创建分析图表

现在,我想通过为视频视图创建简单的分析图表来增加交互性。

图表将包含每个月的视图。问题是我不知道从哪里开始。

任何人都可以告诉我在每个月的数据库中存储视频视图的逻辑,然后以条形图的形式查看吗? (就像谷歌分析说,每个月或每周的访问者数量)

+1

Google有[图表工具](https://developers.google.com/chart/)。 – Ami

+0

...或者你可以制作一个整洁的[HTML5应用](http://www.rgraph.net/),或者使用[PHP GD图像库](http://www.roseindia.net/tutorial/php/phpgd /)来生成静态图像。 –

回答

0

当算一个看法?


您必须定义何时计数视图。可能最好的做法是分析某个用户访问视频的时间间隔,播放时间以及可能的某些标识符(如他的用户代理),以便能够区分IP地址后面的多个用户(如果用户不是“ t登录)。

插入视图


一旦你决定如果算上一个视图,你必须把它插入到数据库中。这取决于你使用的数据库和表结构。看看PHP MySQL教程,或者如果您认为自己可以做得更多,请看看PDO,它可以更安全,更实用。

为了能够分析每月的统计数据,你必须插入每个视图与时间戳。最后,你只需要选择指定日期的值(在你的情况,最后一个月)。

这就要求您至少知道如何设置您的数据库表,在其中插入数据。

显示的看法


因为你必须为每一个视图中的条目在你的数据库,你最好的拍摄是创建一个自动的工作,与总的更新另一个表观点。这将减少负载,并且还可以防止用户立即看到视图计数(如果有人试图查看计数 - 可能会有帮助 - >他不能立即查看他是否成功)。

创建图表


首先你要选择的值。假设您的用户能够指定他想要查看视图的日期范围,则必须采用此范围,用它查询数据库,然后继续处理结果。您如何选择它取决于您想要如何显示它。如果您想显示每个月的每一天,则必须按天对影片进行分组。

您如何实际显示数据是向您开放的。它可能是一些非常简单的东西,或者可以使用诸如JpGraph之类的东西来创建图形作为图像。我个人使用JpGraph这样的东西。需要一些努力,但它是值得的努力。

我希望这给了你一个想法如何解决你的问题。如果您有更具体的问题,请发布一些代码以及您正在尝试执行的操作,因为表示解决方案不存在。

0

有一列表video_id,计数,月份和年份列。 将video_id,month和year组合为一个唯一密钥。

每当查看视频时(以编程术语要求),尝试插入video_id,1,month和year。 检查您是否得到唯一的密钥违规。如果你这样做,而不是插入你更新count + 1的计数。

要获取月份和年份,您可以使用MYSQL日期函数。 video_id将从前端发送,计数可以很容易地增加。

一旦拥有此表格,您就可以随时获得该月份和年份合并的特定视频的计数。

1

谷歌图表将是完美的,你正在寻找做的。我自己使用它们。只需使用PHP json_encode输出统计信息即可。

然后使用cron作业获取当前数量的veiws或其他统计数据并将它们存储在数据类型文本行中。

https://developers.google.com/chart/