我做的信息发布网站,问题是现在有人一天可以发10几个帖子,为了防止灌水,我想限制一天同一个ip只能发5个帖子,该怎么办,请教高手,最好能给个例子
解决方案 »
- 用squirrelmail无法打开有中文名附件的邮件,怎么解决?
- zend studio 速度慢的问题
- PHP require( APP_DIR."/client/v.php" ); 这条语句是什么意思呢?
- email整合到客服系统
- php网页中如何同时获得一个多选框多个选项值
- 熟悉ShopEX 模板的来
- 原创PHP上传类–瑞意上传类 RUpload
- 求助_关于微信接口上传图文素材时与html标签的冲突问题。
- curl抓取得到HTTP/1.1 403 Forbidden
- 用ImageMagick创建cmyk颜色的图片,在photoshop中显示的cmyk值不一样!!!
- 想开发一个体育比赛的论坛,请教有什么资源可以使用
- PHP多线程
比如下面是你的帖子数据表那个SQL语句你会写吧,其实就是在数据表加个字段...
另外还有个方法,就是设置Cookie值,因为很多网吧的公网IP都是相同,Cookie一设置,.每发一次帖就++一此,当Cookie的值为5的时候就有发帖限制了,但是此方法能够人为删除Cookie,但是建议这样使用
因为祖国大地网吧多多,人为删除Cookie是计算机能手才能做得来的,一般人不会这样,这样既能保证不乱发帖,又能保证最大限度的让正常的人发正常的帖
限制cookie,对于懂得删除cookie的人来说就是摆设,一般这种乱发帖的人水平都不低.所以不要把他们理解为白痴
所以最可行的方式是,在你的数据库用户表里边加入两个字段
第一个字段用来累计计数,第二个字段用来存放今天是几号,例如今天是2011年5月27号,那么你只需要存储27就好了
用户登陆发帖的时候首先判断他的这个几号是不是今天,
如果不是今天,那么就写入今天的号码,同时他的累计计数设置为1
如果是今天,那么就读累计计数的值并+1,当累计计数达到5的时候exit掉就行了.这种方法也存在缺陷,那就是用户如果注册几十个马甲,你还是控制不了