织梦DedeCMS自定义表单限制IP24小时只能提交一次教程

织梦dedecms有自定义表单提交功能,这个很方便我们开发一些例如报名,提交订单以及挂号的功能,但是用户可以无限制重复提交,这样就给网站带来非常高的维护成本,下面就告诉大家如何设置每个用户24小时内只能提交一次自定义表单

首先我们打开/plus/diy.php文件,在里面找到如下代码:

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

在其下面添加如下代码:

//检测游客是否已经提交过表单 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,'/'); }  

添加完成后保存覆盖原来的就可以了,此方法是通过验证cookie的方式防止用户重复提交,如果用户清除cookie的话还是可以提交的。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/fa8b4252265b8d8d5b0366346afe0514.html