留言版能封杀IP
同一个IP15分钟发一条留言
同一IP每天发言条数上限5条

解决方案 »

  1.   

    通过 $iipp=$_SERVER["REMOTE_ADDR"]; 获取客户端的IP地址,然后存储进SESSION,进行判断。
      

  2.   

    这个session怎么写,能不能给我一个例子呢?
    封杀IP如果有三种,封杀一天、一周及永久封杀,怎么写?
      

  3.   

    数据库保存各个 IP的发布情况 ,IP地址,留言时间,是否限制
    至于条目,用sql读取下当前IP,当天 有几条 数据
      

  4.   

    每条留言记录IP和时间。
    相关IP和时间就可以进行你的条件筛选了。
      

  5.   

    Session不可能实现一周,甚至一天的记录的,当用户登出的时候一般会清session的,所以必须得借助数据管理系统来实现吧。
      

  6.   


    就是啊,这两边换成64位WIN7,运行PHP留言板好像出了问题,哎,多事之秋啊
      

  7.   

    我无语!~
    两个方法:
    1.数据库建个表,存储字段 ip 最后留言时间 留言数当提交留言的时候 先查看数据库是否有这个ip 如果无新建,有则修改然后看ip的留言时间如果,最后时间距离现在时间有1天以上则,把留言数改为0,然后执行下一步。
    如果在一天内且,当前时间据最后留言时间有15分钟则执行下一步
    否则不存储,返回。最后审核当前的留言数是否等于5,如果是不存储,返回。
    如果小于5则留言,并且留言数加1.2.使用cookies。
    因为第一种方法牵扯到数据库,在信息量太大以后还要清除数据。
    所以还有一种方法就是使用本地的cookies,减少服务器的负载量的,但是缺点也是显而易见的,就是如果本地清除了cookies,那么此方法没有达到预期的目的。这个方法与第一个方法的唯一的区别就是检验的是cookies,并且要为cookies设定一天的过期时间(这样你就不用检测一天这个时间了,因为一天到了,cookies就自动过期了)。剩下的大致一样。我就不再重复了。
      

  8.   


    可能我没问清楚,其实实现上我是很清楚的,我只是担心一些细节问题。
    比如管理员登录界面被DDOS攻击,或者数据库无限膨胀减小效率等。
    同一IP每天发言条数上限5条,这一条其实有两种解释,一种是同一IP24小时内只能发5条,
    另一种解释是服务当天针对同一IP,只能发言5条,那么这种情况其实用户在24小时内最多可能发10条留言。
    客户提的要求,我只是把它照搬出来了,呵呵
    留言板我已经完成的差不多了,过几天把原代码发上来共享……
      

  9.   

    将留言者IP和留言时间记录到服务器SESSION中,该访问者再次留言时,和上次留言时间进行对比。
    SESSION是在服务器上的一片内存空间,因此不必担心像COOKIE一样被用户清除掉。