织梦dedecms有自定义表单提交功能,这个很方便我们开发一些例如报名,提交订单以及挂号的功能,但是用户可以无限制重复提交,这样就给网站带来非常高的维护成本,下面就告诉大家如何设置每个用户24小时内只能提交一次自定义表单: 首先我们打开/plus/diy.php文件,在里面找到如下代码: 1 if (!is_array($diyform)) 2 3 { 4 5 showmsg( 自定义表单不存在 , -1 ); 6 7 exit (); 8 9 } 在其下面添加如下代码: 01 //检测游客是否已经提交过 […]
织梦dedecms有自定义表单提交功能,这个很方便我们开发一些例如报名,提交订单以及挂号的功能,但是用户可以无限制重复提交,这样就给网站带来非常高的维护成本,下面就告诉大家如何设置每个用户24小时内只能提交一次自定义表单:
首先我们打开/plus/diy.php文件,在里面找到如下代码:
1 |
if (!is_array($diyform)) |
5 |
showmsg( '自定义表单不存在' , '-1' ); |
|
在其下面添加如下代码:
03 |
if (isset($_COOKIE[ 'VOTE_MEMBER_IP' ])) |
07 |
if ($_COOKIE[ 'VOTE_MEMBER_IP' ] == $_SERVER[ 'REMOTE_ADDR' ]) |
11 |
ShowMsg( '您已经填写过表单啦' , '-1' ); |
17 |
setcookie( 'VOTE_MEMBER_IP' ,$_SERVER[ 'REMOTE_ADDR' ], time ()*$row[ 'spec' ]*3600, '/' ); |
23 |
setcookie( 'VOTE_MEMBER_IP' ,$_SERVER[ 'REMOTE_ADDR' ], time ()*$row[ 'spec' ]*3600, '/' ); |
|
添加完成后保存覆盖原来的就可以了,此方法是通过验证cookie的方式防止用户重复提交,如果用户清除cookie的话还是可以提交的。