用于查看图像的匿名用户计数器

时间:2010-08-13 01:17:06

标签: php

我刚开始使用PHP。我目前正在建立一个允许匿名用户每天查看图像十次的网站。观看的任何图像都会增加计数器以及多次查看某个图像。除非他们注册,否则不允许每天查看超过计数器限制。

只是想知道如何才能使会话和数据库成为可能。另外,如何每24小时重置一次计数器?

非常感谢示例代码。感谢。

顺便说一句,我正在使用kohana 3。

1 个答案:

答案 0 :(得分:4)

如果您使用会话,那么人们可以通过简单的方式解决问题 - 禁用cookie。

您可以将其基于IP地址,但您必须注意多人可能有时拥有相同的IP,而一个人可能拥有多个IP。所以你必须保守你拒绝的东西 - 你不会想要拒绝相同的IP来访问一天只有十次。

所以,如果你不想迫使人们注册/登录,那就没有超级可靠的方法来做你想做的事情(即使这样你也不得不考虑多次注册的人)。 / p>

我可能会考虑通过IP限制它,为包含日期和用户IP的每个视图在数据库中添加一行,如果该行存在,则增加第三列。一旦该列达到100,则禁止访问。第二天,它将全部重置,因为您的日期列现在不同了。

您还可以考虑将规则放入robots.txt,以防止信誉良好的搜索引擎等抓取图片的“缓存”副本。