dedecms防止恶意提交表单设置判断必填项
织梦 dedecms为防止随意提交表单,我们可以在自定义表单设置必填项的功能,主要有两种方法进行处理:1.用默认的/plus/diy.php增加必填判断
? ? ? ?大约在40行左右添加代码:
//增加必填字段判断?
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?
? ? ? ?在自定义表单模板加入以下代码 value="自定义字段"
<input?type="hidden"?name="required"?value="content,name,tel"?/>?
2.用JS判断
红色部分为自定义字段
<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>?
前台部分实例
<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>?
下一篇:DEDECMS自动内链生成解决方法--DEDE关键字内链