CakePHP:基于IP地址的每日单发帖子

时间:2013-07-02 14:48:41

标签: php mysql cakephp ip

我仍然掌握了CakePHP,但我认为我正在取得进展。

背景:我正在开发一个不需要注册的应用程序。我基本上都有可以由网站的任何访问者发布的帖子。

问题:如何限制客人每天发布的次数?假设我想允许客人每天发布一次。我本质上是基于IP创建用户表,每次访问该站点时都记录一个新的IP地址,然后根据该表限制操作吗?

3 个答案:

答案 0 :(得分:1)

是的......会这样做,但我不推荐它。用户可以使用代理更改其IP或仅重新连接到其ISP。所以..基本上,如果我是你,我不会使用基于IP的过滤。

答案 1 :(得分:0)

取决于您是希望拥有用户+访客还是仅限访客。

如果您有用户(登录到站点,使用配置文件和普通用户将获得的所有内容)并且还允许猜测发布,则更容易将guest + ip(或其他过滤选项)添加到users表和通过post表中的user_id列将其与post表关联(在SO中完成的操作类型)。

但是,如果网站中只有访客并且不打算记录用户,那么您只需要一个带有ip列的帖子表,您可以在其中注册哪个IP用于帖子。

此外,正如Iansen所说,可以轻松绕过IP过滤器。这是一个强大的必要条件,用户每天只发布一次吗?

答案 2 :(得分:0)

我要做的是创建一个存储用户IP的.txt文件,使用PHP $_SERVER['REMOTE_ADDR']。 24小时后,在12:00,让您的网络服务器擦除IP文件,让所有人在第二天再次发布。