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-][email protected]([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& gt;

  • 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;}}

时间: 2024-10-09 23:04:15

DEDECMS织梦自定义表单中必填项、电话邮箱过滤以及验证码规则的相关文章

dedecms(织梦)自定义表单后台显示不全

我们常用dedecms 自定义表单做留言功能.但是偶尔会遇到这样一个问题,就是 在前台提交表单后..后天显示不全.特别是中文字符  都不会显示, 比如下图: 这是因为  如果你织梦是gbk的话那就对了 是htmlspecialchars这个函数的原因 默认是utf8 如果不想换php版本的话就把htmlspecialchars($str);替换为htmlspecialchars($str, ENT_COMPAT ,'GB2312'); 所以 要在后台模板 wwww.baidu.com/dede/

dedecms织梦自定义表单发送到指定邮箱(qq,163)

网上很多教程都是用dedecms自带的邮件库发送邮件,而且是写死要发送的字段内容,今天我们用phpmailer来给站长发送自定义表单提交的数据到指定邮箱上(QQ邮箱,163邮箱都可以),不写死任何东西,有什么字段就提交发送什么字段. 操作之前,我们要先搞定用来发送邮件的那个邮箱,说白了就是要开启SMTP. QQ篇 登录QQ邮箱-设置-账户,找到POP3/IMAP/SMTP,开启,现在的邮箱开启POP3/SMTP都要授权码了,千万要记下你的授权码啊,等一下是作为密码使用的. 开启成功后是这样的 1

DedeCMS织梦自定义表单发送指定邮件

第一步.创建自定义表单 首先,我先自定义创建一个自定义表单,先把我们想要的属性,添加进行,然后完成后. 如下图: 1.先新建自定义表单,定义好前台页面.核心→频道模型→自定义表单→增加新的自定义表单 第二步.修改文件 打开网站根目录下的plus文件夹,里面有个diy.php文件(表单提交后处理文件),打开它,在85行上下有如下代码: $query = "INSERT INTO `{$diy->table}` (`id`, `ifcheck` $addvar)  VALUES (NULL,

织梦自定义表单地区联动类型不可用的解决办法

dedecms织梦自定义表单地区联动类型不可用,原因是官方模板文件中注释掉了相关选项,需要修改两个文件 打开 dede/templets/diy_field_edit.htm 找到 <option value="stepselect">联动类型</option--> 改成 --><option value="stepselect">联动类型</option> 打开 dede/templets/diy_field_

ExtJS4为form表单必填项添加红色*标识

通常情况下,ExtJS4的form表单必填项在输入状态下会有特殊提示,非输入状态下,显示却和其他项没有任何区别.为使必填项更加容易区分,我们需要根据allowBlank的属性值,为form表单中的必填项添加红色*标识 在ExtJS4的form表单中,常用组件的继承关系图1-1: //为form表单中必填项添加红色*号标志 Ext.override(Ext.form.field.Base,{ //针对form中的基本组件 initComponent:function(){ if(this.allo

织梦cmsf表单提交到邮箱 织梦表单发送到邮箱 织梦自定义表单发邮箱

大家在做织梦做网站开发时会遇到一个问题:织梦的自定义表单是一个很鸡肋的功能,不仅在后台展示得奇丑,而且也没有提醒功能,使用起来很不方便.很多人用织梦自定义表单时,都想用户提交表单的时候可以发送到自己的邮箱里面去提醒自己.这样省了经常去织梦网站后台看最新的表单情况. 第一步:打开织梦后台,系统->核心参数 开启smtp 第二步: 修改/plus/diy.php代码.打开网站根目录下的plus文件 夹,里面有个diy.php文件(表单提交后处理文件),打开它,在85行上下有如下代码: $query

织梦自定义表单发送邮件超简单版(支持QQ邮箱163邮箱)

环境要求 主机465端口是开启和放行的 php扩展openssl是开启的 php扩展sockets是开启的 1.QQ邮箱 或者 163邮箱 126邮箱 开启SMTP服务,拿到授权码,根据自己的来 QQ邮箱开启SMTP服务 和 获取授权码 163邮箱开启SMTP服务和 获取授权码 126邮箱开启SMTP服务,跟163一样. 2.网站后台 - 系统 - 系统基本参数 - 核心设置 是否启用SMTP方式发送邮件:是 SMTP服务器:ssl://smtp.163.com 或者 ssl://smtp.qq

织梦自定义表单通过ajax提交的实现方法

自定义表单通过ajax判断,提交不用跳转页面,提高用户体验.具体方法如下: html表单代码部分,就提交按钮改成botton,,添加onclick事件 表单代码: <form action="javascript:;" enctype="multipart/form-data" method="post"> <input type="hidden" name="action" value=

织梦自定义表单前台模版显示+分页调用

根目录建立form.php <?php require_once(dirname(__FILE__)."/../include/common.inc.php"); require_once(DEDEINC.'/datalistcp.class.php'); $sql = "Select * From `#@_diyform1`";//可以接着加条件 例如order by id desc 排序 $dlist = new DataListCP(); $dlist-