dedecms自定义表单加验证码

一,在后台左侧点击核心-》自定义表单-》增加新的自定义表单,按照提示填写信息,保存出来再点击编辑进去添加字段

二,自定义表单的调用,网上有调用方法,可是测试没成功,我就用自己的方法吧,点击表单的预览-》发布信息,会看到表单的模板,然后鼠标右键查看源代码,找到表单的代码,把关键的代码复制出来,就可以变成前端想要的表单了。

三,一般表单都需要验证字段和防止恶意提交

1)验证字段:

找到项目根目录下的plus/diy.php,在59行有个if(!empty($dede_fields))这个判断里面就可以添加我们验证字段的代码了,示例:

/*验证表单字段*/

                 if ($nickname == '') {  //昵称不能为空

                    ShowMsg('昵称不能为空','-1',0,1000);  

               exit;               

                 } elseif (!preg_match("/^1[34578]\d{9}$/", $clientele_tell) ){

                    ShowMsg('请输入正确的手机号','-1',0,1000);  

               exit;

                 } elseif (!is_numeric($clientele_qq) ) {

                    ShowMsg('请输入正确的QQ','-1',0,1000);  

               exit;

                 } elseif ( empty($message) ) {

                    ShowMsg('留言不能为空','-1',0,1000);  

               exit;

                 }

2)验证码:

在前端验证码的地方添加代码:

 

<inputname="validate" type="text" id="vdcode"style="text-transform:uppercase;width:100px" size="8"/>

<imgid="vdimgck" align="absmiddle"onClick="this.src=this.src+'?'" style="cursor: pointer;"alt="看不清?点击更换"src="../include/vdimgck.php"/>

再找到项目根目录下的plus/diy.php,在59行有个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',0,1000);               

                 exit;

                 }

发现一个问题,在dedecms中自定义表单中字段英文名和系统中新添加的变量的英文名如果是一样的话,就会影响到表单中字段的提交,提交的表单中该字段的值是系统中新添加变量的值。

对于 dedecms 自定义表单,您可以通过以下步骤来自定义表单 html: 1. 登录 dedecms 后台,进入“模板管理”->“自定义模板”,创建一个新的自定义模板。 2. 在自定义模板中添一个表单元素,可以使用 HTML 标签来创建表单,如下所示: ```html <form action="submit.php" method="post"> <label for="name">Name:</label> <input type="text" name="name" id="name"> <br> <label for="email">Email:</label> <input type="email" name="email" id="email"> <br> <input type="submit" value="Submit"> </form> ``` 3. 在自定义模板中添自定义表单的标签,如下所示: ```html {dede:myform name='form1' formid='1' action='form.php' method='post'} ``` 其中,name 表示表单的名称,formid 表示表单的 ID,action 表示表单提交的地址,method 表示表单提交的方法。 4. 将表单元素添自定义表单的标签中,如下所示: ```html {dede:myform name='form1' formid='1' action='form.php' method='post'} <label for="name">Name:</label> <input type="text" name="name" id="name"> <br> <label for="email">Email:</label> <input type="email" name="email" id="email"> <br> <input type="submit" value="Submit"> {/dede:myform} ``` 5. 保存自定义模板,即可在 dedecms 中使用自定义表单。 至于如何用自己的模板来展示自定义表单,可以在自定义模板中添表单的样式和布局,来美化自定义表单的展示效果。具体的方法可以参考 dedecms 的官方文档或者相关的教程。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值