PHP限制用户提交次数

解决以上两个问题之后,还有一个问题,就是某些用户有意或者无意的提交了多次表单,这也会给信息收集工作带来巨大的压力,所以我们也要努力地降低这个方面的工作量。我们可以采用验证Cookies方法,达到织梦DedeCMS自定义表单限制IP24小时只能发布一次功能。

实现方法是,打开plus下diy.php文件找到以下代码:

1
if(!is_array($diyform))        {            showmsg('自定义表单不存在', '-1');            exit();        }

再其下添加下面的代码:

1
if(isset($_COOKIE['VOTE_MEMBER_IP']))   {       if($_COOKIE['VOTE_MEMBER_IP'] == $_SERVER['REMOTE_ADDR'])       {           ShowMsg('您已经填写过表单啦','-1');          exit();     }       else        {           setcookie('VOTE_MEMBER_IP',$_SERVER['REMOTE_ADDR'],time()*$row['spec']*3600,'/');       }    }     else     {       setcookie('VOTE_MEMBER_IP',$_SERVER['REMOTE_ADDR'],time()*$row['spec']*3600,'/');    }

当然,经过以上的操作,织梦DedeCMS的自定义表单并不是就完全的安全了,别人还可以清空Cookies的方式继续重复提交,不过这些就不需要考虑那么多了,毕竟道高一尺魔高一丈,不可能百分百完美的。希望麻瓜程序员的这篇织梦DedeCMS自定义表单数据校验的文章能够给大家帮助。

Sorry, the comment form is closed at this time.

 
© 2012 Ai-WEB的博客 Suffusion theme by Sayontan Sinha