DEDECMS织梦自定义表单中必填项、电话邮箱过滤以及验证码规则
织梦自定义表单必填项规则--->(wwwshu-acca.com网站表单)
1. 在plus/diy.php 的第 40行下加如下代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
//增加必填字段判断 if ($required!= '' ){ if (preg_match( '/,/' , $required)){ $requireds = explode( ',' ,$required); foreach($requireds as $field){ if ($$field== '' ){ showMsg( '带*号的为必填内容,请正确填写' , '-1' ); exit(); } } } else { if ($required== '' ){ showMsg( '带*号的为必填内容,请正确填写' , '-1' ); exit(); } } } |
2.在模版的表单里加:
1
|
<input type= "hidden" name= "required" value= "name,qq,telephone" /> |
织梦自定义表单电话和邮箱验证
dedecms的自定义表单没有对提交的信息进行过滤,经常会有垃圾信息骚扰,
本站提供2条检测规则,是利用正则方法,可以检测手机号码和邮箱,
修改plus下的diy.php 再提交入库前插入下面代码即可,
其中的 $telphone和$email就是提交的手机号码和邮箱值名,如果不是我设定的可以自行修改。
1
2
3
4
5
6
7
8
9
10
11
12
13
|
//判断手机号码是否正确 if (! eregi ( "^13[0-9]{9}|15[0-9]{9}$" , $telphone )) { showMsg( '手机号码不对,请正确填写' , '-1' ); exit (); } //验证邮箱 if (! eregi ( "^[_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,3}$" , $email )) { showMsg( '请您填写正确的E-Mail 地址!' , '-1' ); exit (); } |
织梦自定义表单验证码
利用织梦内容管理系统(DedeCMS)自带提供的自定义表单功能即可满足大多数的此类需求。
通过给自定义表单加入验证码的功能,可以防止一些用户恶意提交。
1、先进入DedeCMS后台生成自定义表单。
2、在自定义表单模板中添加验证码代码,如下:
<input name="validate" type="text" id="vdcode" style="text-transform:uppercase;" size="8"/><img id="vdimgck" align="absmiddle" onClick="this.src=this.src+'?'" style="cursor: pointer;" alt="看不清?点击更换" src="../include/vdimgck.php"/><a href="javascript:vide(-1);" onClick="changeAuthCode();">看不清? </a>
3、在当前页添加JS代码,如下:
<script type="text/javascript" language="javascript">//验证码 function changeAuthCode(){var num =newDate().getTime();varrand= Math.round(Math.random()*10000); num = num +rand; $('#ver_code').css('visibility','visible');if($("#vdimgck")[0]){ $("#vdimgck")[0].src ="../include/vdimgck.php?tag="+ num;}returnfalse;}</script>
4、修改订单处理页面,打开网站根目录/plus/diy.php文件, 添加验证代码到第61行左右位置。如下:
if(!empty($dede_fields)){$validate=empty($validate) ? '':strtolower(trim($validate));$svali=strtolower(GetCkVdValue());if(($validate==''||$validate!=$svali)&&preg_match("/6/",$safe_gdopen)){ ResetVdValue(); ShowMsg('验证码不正确!','-1');exit;}}
DEDECMS织梦自定义表单中必填项、电话邮箱过滤以及验证码规则的更多相关文章
- 如何设置dedecms自定义表单必填项?
用dedecms自定义表单可以制作一个简单的预约系统,有些相关信息需要设置为必填项,比如联系方式,没有留下真实的电话或其他信息,以后要怎么联系到你的客户.那我们要如何设置织梦cms自定义表单必填项呢? ...
- dedecms织梦自定义表单发送到邮箱-用163邮箱发送邮件
https://www.baidu.com/s?ie=utf-8&f=8&rsv_bp=1&tn=monline_3_dg&wd=dedecms 邮箱&oq=d ...
- dedecms(织梦)自定义表单后台显示不全 自定义模型当中添加自定义字段后在后台添加内容后不显示解决方案
我们常用dedecms 自定义表单做留言功能.但是偶尔会遇到这样一个问题,就是 在前台提交表单后..后天显示不全.特别是中文字符 都不会显示, 比如下图: 这是因为 如果你织梦是gbk的话那就对了 ...
- dedecms织梦自定义表单提交之后如何发送到邮箱!
但是往往一些客户需要做一些提交信息到后台并发送到指定的邮箱. 一.直接打开plus下面的diy.php文件: 85行:$query = "INSERT INTO `{$diy->ta ...
- ExtJS4为form表单必填项添加红色*标识
通常情况下,ExtJS4的form表单必填项在输入状态下会有特殊提示,非输入状态下,显示却和其他项没有任何区别.为使必填项更加容易区分,我们需要根据allowBlank的属性值,为form表单中的必填 ...
- 织梦cmsf表单提交到邮箱 织梦表单发送到邮箱 织梦自定义表单发邮箱
大家在做织梦做网站开发时会遇到一个问题:织梦的自定义表单是一个很鸡肋的功能,不仅在后台展示得奇丑,而且也没有提醒功能,使用起来很不方便.很多人用织梦自定义表单时,都想用户提交表单的时候可以发送到自己的 ...
- DedeCMS织梦自定义图片字段调用出现{dede:img ..}
做站过程中碰到这样一个问题,找到解决办法收藏分享:为什么在首页用自定义列表调用出来的图片字段不是正确的图片地址,而是类似于: {dede:img text='' width='270' height= ...
- Vue Elementui 表单必填项和非必填项label文字对齐的简单方式
1. 不好的方式 很长时间以来都是用改写form-item样式来使得必填项和非必填项保证label对齐,这样需要改写系统样式,还要在相应的item上引用,代码量增多,示例如下(不推荐) <tem ...
- 织梦自定义表单通过ajax提交的实现方法
自定义表单通过ajax判断,提交不用跳转页面,提高用户体验.具体方法如下: html表单代码部分,就提交按钮改成botton,,添加onclick事件 表单代码: <form action=&q ...
随机推荐
- 【HDOJ5980】Find Small A(签到)
题意:不知道 思路:队友写的 #include <stdio.h> #include <vector> #include <algorithm> #include ...
- keepalived学习
HA集群 keepalived heartbeat corosync cman 功能实现 vrrp协议在Linux主机上以守护进程方式, 能够根据配置文件自动生成ipvs规则 对各RS健康状态检测 组 ...
- 2014湘潭全国邀请赛I题 Intervals /POJ 3680 / 在限制次数下取有权区间使权最大/小问题(费用流)
先说POJ3680:给n个有权(权<10w)开区间(n<200),(区间最多数到10w)保证数轴上所有数最多被覆盖k次的情况下要求总权最大,输出最大权. 思路: 限制的处理:s ...
- Ubuntu 16.04通过Snap安装应用程序
16.04LTS可以说是一个不寻常的5年支持版本,同时也带来了Snap应用,并通过Snap可以安装众多的软件包.需要注意的是,Snap是一个全新的软件包架构,但是同样也比其它的软件包大很多. 简单的安 ...
- 【Java TCP/IP Socket】深入剖析socket——数据传输的底层实现
底层数据结构 如果不理解套接字的具体实现所关联的数据结构和底层协议的工作细节,就很难抓住网络编程的精妙之处,对于TCP套接字来说,更是如此.套接字所关联的底层的数据结构集包含了特定Socket实例所关 ...
- [React] Create and import React components with Markdown using MDXC
In this lesson I demonstrate how to use the library MDXC to create and import React components with ...
- 使用FMDB多线程訪问数据库,及database is locked的问题
今天最终攻克了多线程同一时候訪问数据库时,报数据库锁定的问题.错误信息是: Unknown error finalizing or resetting statement (5: database i ...
- push代码到github时,每次都要输入用户名和密码的问题
问题原由 我在Github上 建立了一个小项目TauStreamingServer,可是在每次push代码 的时候,都要求输入用户名和密码,很是麻烦. 如何才能避免每次都输入用户名和密码呢? 解决办法 ...
- LeetCode——Remove Nth Node From End of List
Given a linked list, remove the nth node from the end of list and return its head. For example, Give ...
- Effective C++ 43,44
43.明智地使用多继承. 多继承带来了极大的复杂性.最主要的一条就是二义性. 当派生类为多继承时,其多个基类有同名的成员时,就会出现二义性.通常要明白其使用哪个成员的.显式地限制修饰成员不仅非常笨拙, ...