找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 979|回复: 0

[分享] dede防止恶意提交表单设置判断必填项

[复制链接]
发表于 2018-7-19 20:33:37 | 显示全部楼层 |阅读模式 来自 河南省新乡市
       防止随意提交表单,可以在自定义表单设置必填项的功能,有两种方法处理
用默认的/plus/diy.php增加必填判断
       大约在40行左右添加代码:
  1. //增加必填字段判断
  2. if($required!=''){
  3. if(preg_match('/,/', $required))
  4.    {
  5.        $requireds = explode(',',$required);
  6.        foreach($requireds as $field){
  7.            if($field==''){
  8.                showMsg('带*号的为必填内容,请正确填写', '-1');
  9.                exit();
  10.            }
  11.        }
  12.    }else{
  13.        if($required==''){
  14.            showMsg('带*号的为必填内容,请正确填写', '-1');
  15.            exit();
  16.        }
  17.    }
  18. }
  19. //end
复制代码

       在自定义表单模板加入以下代码(value="自定义字段"
<input type="hidden" name="required" value="content,name,tel" />
用JS判断
红色部分为自定义字段
  1. <script type="text/javascript">
  2.   $(function(){
  3.   $("<font color="#ff0000">.btn</font>").click(function(){
  4.   var myNum=/^[\u4e00-\u9fa5]+$/;
  5. if(myNum.test($("<font color="#ff0000">#name</font>").val())){}else{alert("请输入中文名字");return false;};
  6.   var myNum=/^[\u4e00-\u9fa5]+$/;
  7. if(myNum.test($("<font color="#ff0000">#xq</font>").val())){}else{alert("请输入小区中文名字");return false;};
  8.   var mymj=/^([1-9][0-9]{1,3})+(.[0-9]{1,4})?$/
  9. if(mymj.test($("<font color="#ff0000">#mj</font>").val())){}
  10. else{alert("户型面积请输入首位不为零并且在2-4位的有效数字有效数字");return false;};
  11.   var myphone=/^\d{8,11}$/
  12. if(myphone.test($("#phone").val())){}
  13. else{alert("电话位数在8-11位");return false;};
  14. if($("input[type=text]").val()==''){alert("文本框不能为空!");return false;}
  15. else {alert("发布成功!请保持电话畅通!客服人员会在24小时之内与您联系!");return true;}});});
  16. </script>
复制代码

前台部分实例
<form action="/plus/diy.php" enctype="multipart/form-data" method="post">
    <input type="hidden" name="action" value="post" />
    <input type="hidden" name="diyid" value="1" />
    <input type="hidden" name="do" value="2" />
    <div class="tuancon">
     <h3>重庆装修团购申请,立省5000元</h3>
     <div class="tuancon_L">
      <p><label>我的称呼<em>*</em></label><input class="form1" type="text" name="name" id="name"/></p>
      <p><label>我的小区<em>*</em></label><input class="form1" type="text" name="xq" id="xq"/></p>
      <p><label>联系电话<em>*</em></label><input class="form1" type="text" name="phone" id="phone"/></p>
      <p><label>Q       Q  </label><input class="form1" type="text" name="qq" id="qq"/></p>
     </div>
     <div class="tuancon_R">
      <p><label>户型面积<em>*</em></label><input class="form1" type="text" name="mj" id="mj"/></p>
      <p><label>卫生间数</label>
         <select name='wc'>
          <option value='1个'>1个</option>
          <option value='2个'>2个</option>
          <option value='2个以上'>2个以上</option>
         </select>
      </p>
      <p><label>阳台面积</label><input class="form1" type="text" name="ytmj" id="ytmj"/></p>
      <p><label>喜欢风格</label>
        <select name='fg'>
         <option value='现代简约风格'>现代简约风格</option>
         <option value='地中海风格'>地中海风格</option>
         <option value='简欧风格'>简欧风格</option>
         <option value='欧式风格'>欧式风格</option>
         <option value='中式风格'>中式风格</option>
         <option value='美式风格'>美式风格</option>
         <option value='后现代风格'>后现代风格</option>
         <option value='新古典风格'>新古典风格</option>
         <option value='其他风格'>其他风格</option>
        </select>
       </p>
      </div>
      <div class="clear"></div>
      <div class="sheng_box"><input class="btn1" type="submit" value="免费申请装修"/></div>
      <input type="hidden" name="dede_fields" value="xq,text;fg,select;name,text;phone,text;mj,float;qq,int;wc,select;ytmj,int" />
      <input type="hidden" name="dede_fieldshash" value="c53edcf88ed9787e2fe3266b16e2778a" />
     </div>
    </form>

发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;

如何回报帮助你解决问题的坛友,好办法就是点击帖子下方的评分按钮给对方加【金币】不会扣除自己的积分,做一个热心并受欢迎的人!

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则 需要先绑定手机号

关闭

站长推荐上一条 /1 下一条

QQ|侵权投诉|广告报价|手机版|小黑屋|西部数码代理|飘仙建站论坛 ( 豫ICP备2022021143号-1 )

GMT+8, 2024-4-23 20:30 , Processed in 0.050423 second(s), 8 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表