帮助教程

  • dede自定义表单留言为空验证判断必填项防止恶意提交

    最近更新时间:2019-03-02 22:24:47 77

    下面介绍2种方法,建议第一种简单快速,第二种不稳定

    方法1:/plus/diy.php增加必填判断

    大约在40行左右找到如下代码,

    $dede_fields = empty($dede_fields) ? '' : trim($dede_fields);

    后面添加添加代码:

    //增加必填字段判断
    if($required!=''){
    if(preg_match('/,/', $required))
       {
           $requireds = explode(',',$required);
           foreach($requireds as $field){
               if($$field==''){
                   showMsg('带*号的为必填内容,请正确填写', '-1');
                   exit();
               }
           }
       }else{
           if($required==''){
               showMsg('带*号的为必填内容,请正确填写', '-1');
               exit();
           }
       }
    }
    //end

    前台表单模板表头

    <form action="/plus/diy.php" enctype="multipart/form-data" method="post">

    增加下面的代码(value="自定义字段,自定义字段")

    <input type="hidden" name="required" value="name,tel,mail" />

    方法2:用JS判断

    红色部分为自定义字段,把以下代码放在</head>之前,

    <script type='text/javascript'>
    <!-- 
    $(document).ready(function() 
    { 
    //验证 
    $('#complain').submit(function () 
    { 
    if($('#name').val()==""){ 
    $('#name').focus(); 
    alert("用户名不能为空!"); 
    return false; 
    } 
    if($('#tel').val()=="") 
    { 
    $('#tel').focus(); 
    alert("联系电话不能为空!"); 
    return false; 
    } 
    if($('#title').val()=="") 
    { 
    $('#title').focus(); 
    alert("标题不能为空!"); 
    return false; 
    } 
    if($('#text').val()=="") 
    { 
    $('#text').focus(); 
    alert("具体内容不能为空!"); 
    return false; 
    } 
    }) 
    }); 
    -->
    </script>

          上面只能判断数值是否为空,结合正则表达式,能准确判断输入的表单信息是否为规定格式数据。举例说明:

    <script type="text/javascript">
      $(function(){
      $(".btn").click(function(){
      var myNum=/^[\u4e00-\u9fa5]+$/;
     if(myNum.test($("#name").val())){}else{alert("请输入中文名字");return false;};
      var myNum=/^[\u4e00-\u9fa5]+$/;
     if(myNum.test($("#xq").val())){}else{alert("请输入小区中文名字");return false;};
      var mymj=/^([1-9][0-9]{1,3})+(.[0-9]{1,4})?$/
     if(mymj.test($("#mj").val())){}
     else{alert("户型面积请输入首位不为零并且在2-4位的有效数字有效数字");return false;};
      var myphone=/^\d{8,11}$/
     if(myphone.test($("#phone").val())){}
     else{alert("电话位数在8-11位");return false;};
     if($("input[type=text]").val()==''){alert("文本框不能为空!");return false;}
     else {alert("发布成功!请保持电话畅通!客服人员会在24小时之内与您联系!");return true;}});});
    </script>



    以上内容是否对您有帮助?
  • Close