织梦自定义表单禁止同一ip重复提交的方法

时间:2023-01-26 13:08:44

为了防止其他人多次提交数据,影响用户数据正常统计与回复,织梦程序做的自定义表单提交需要禁止同一ip多次提交,下面我来说下具体的操作方法。

1、通过ftp找到/plus/diy.php这个文件。

2、下载到电脑本地用dw或ediplus进行编辑。

3、找到如下代码:

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

4、在以上代码的后边添加下面这段代码:
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,'/'); }


5、好的,搞定,更新后台数据,重新去检测一下!

但实际上一般版本,这个功能都有,代码如下:
if(isset($_COOKIE['VOTE_MEMBER_IP']))
            {
                if($_COOKIE['VOTE_MEMBER_IP'] == $_SERVER['REMOTE_ADDR'])
                {
                    ShowMsg('您已经预约成功,如有疑问拨打:010-53362099','-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,'/');
            }

测试期间由于需要多次操作,可以注释掉,(已试)