欢迎来到酱油妹!织梦模板,dede模板下载,织梦cms模板,免费网站模板下载站

酱油妹

织梦DEDE自概念表单中添加验证码的办法和织梦DEDE自概念表单提交后增加提

企业模板

织梦DEDE网站给自概念表单加dede模板自带验证码的办法。

有时候,大家由于需要给dede网站的自概念表单添加验证码,预防恶意填写表单提交。

大家可以用以下的办法来达成:

第一,大家要找到/plus/diy.php这个文件

在头部引入文件:

require_once(DEDEINC.'/membermodel.cls.php');

然后找到

elseif($do==2)

{在这个地方加入代码块

//验证码验证

$svali=GetCkVdValue();

if(preg_match("/1/",$safe_gdopen)){

if(strtolower($vdcode)!=$svali||$svali=='')

{

ResetVdValue();

ShowMsg('验证码错误!','-1');

exit();

}

}

修改好后保存一下文件。

第二步:在采用验证码的自概念表单静态页面中插入代码块

<inputtype="text"class="intxtw200"style="width:50px;text-transform:uppercase;"id="vdcode"name="vdcode"class="code"/>

<imgid="vdimgck"align="absmiddle"onclick="this.src=this.src+'?'"style="cursor:pointer;"alt="看不清?点击更换"src="/include/vdimgck.php"/>看不清?<ahref="javascript:void(0)"onclick="changeAuthCode();">点击更换</a>

在这个静态页面里还要引用JQuery

再加入JS代码块

<scripttype="text/javascript">
$=jQuery;
functionchangeAuthCode(){
varnum=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>

好了,目前试一试,是不是可以达成验证码的提交了?一个容易的织梦DEDE自概念表单dede模板自带验证码的功能就达成了。

织梦DEDE自概念表单的应用非常便利,不管用在什么地方,采集信息特别便捷制作和管理。

有如下几个建议,把下拉框和单选按扭在后台做成单行文本,这样的话不管你提交的是下拉框或是单选,都可以有效的接收它的值。假如后台就做成单选或下拉,假如改了默认值,提交的表单值跟后台默认值对不上的话就会出现提交不成功的状况,就是前台提交的时候选择了,但后台看不到数据。若是做成单行文本,提交的值就会以文本的形式写入到后台,表单修改值也愈加显得便捷了。

提交之后会显示织梦DEDE的默认提示信息“友情提示”几秒过后就自动转到首页。怎么样才能让提交的信息停留,并让用户确认所提交的信息。

我想了如下方法。给diy.php里提交成功后输入固定值而不是自带的跳转办法。如下:

if($action == 'post')
{
if(empty($do))
{
$postform = $diy->getForm(true);
include DEDEROOT."/templets/plus/{$diy->postTemplate}";
exit();
}
elseif($do == 2)
{
$dede_fields = empty($dede_fields) ? '' : trim($dede_fields);
$dede_fieldshash = empty($dede_fieldshash) ? '' : trim($dede_fieldshash);
if(!empty($dede_fields))
{
if($dede_fieldshash != md5($dede_fields.$cfg_cookie_encode))
{
showMsg('数据校验不对,程序返回', '-1');
exit();
}
}
$diyform = $dsql->getOne("select * from where diyid='$diyid' ");
if(!is_array($diyform))
{
showmsg('自概念表单不存在', '-1');
exit();
}

$addvar = $addvalue = '';

if(!empty($dede_fields))
{

$fieldarr = explode(';', $dede_fields);
if(is_array($fieldarr))
{
foreach($fieldarr as $field)
{
if($field == '') continue;
$fieldinfo = explode(',', $field);
if($fieldinfo[1] == 'textdata')
{
${$fieldinfo[0]} = FilterSearch(stripslashes(${$fieldinfo[0]}));
${$fieldinfo[0]} = addslashes(${$fieldinfo[0]});
}
else
{
${$fieldinfo[0]} = GetFieldValue(${$fieldinfo[0]}, $fieldinfo[1],0,'add','','diy', $fieldinfo[0]);
}
$addvar .= ', `'.$fieldinfo[0].'`';
$addvalue .= ", '".${$fieldinfo[0]}."'";
}
}

}

$query = "insert into `{$diy->table}` (`id`, `ifcheck` $addvar) values (NULL, 0 $addvalue); ";

if($dsql->executenonequery($query))
{
$id = $dsql->GetLastID();
if($diy->public == 2)
{
//diy.php?action=view&diyid={$diy->diyid}&id=$id
$goto = "diy.php?action=list&diyid={$diy->diyid}";
$bkmsg = '发布成功,目前转向表单列表页...';
}
else
{
$goto = !empty($cfg_cmspath) ? $cfg_cmspath : '/';
$bkmsg = '发布成功,请等待管理员处置...';
}
echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "">
<html xmlns="">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>订单核对 </title>
<link href="/img_cnosn/css_end.css" rel="stylesheet" type="text/css" />
</head>

<body>
<div id="ctent">
<h3>您已成功提交订单,请仔细核对你的信息!</h3>
<ul>
<script language="javascript">
function ReplaceAll(str,sptr,sptr1)
{
while (str.indexOf(sptr) >= 0)
{
str = str.replace(sptr, sptr1);
}
return str;
}descria=",您的姓名:,联系电话:,送货地址:,购买商品:,支付方法:,订货留言:,b";
var descri=new Array();
descri=descria.split(",");
str= "'.$addvalue.'" ;
str=ReplaceAll(str,"\'","");
var strarray=new Array();
strarray=str.split(",") ;
for(i=0;i<7;i++){
document.write("<li>"+descri[i]+strarray[i]+"</li>");
}
</script>
</ul>
<div class="info">友情提示:您的订单已提交成功,自己的客服会尽快与你获得联系 <a href="#" onclick="window.operner = null;window.open(\'\',\'_self\');window.close();">确认并关闭</a> 或 <a href="#" onclick="window.operner = null;window.open(\'\',\'_self\');window.close();">返回修改</a></div>
</div>
</body>
</html>
';
}
}
}
上是代码。这样就是固定提取前几个表单信息给用户确认,不过在后台增加表单的时候必须要统一按以上数组的顺序进行添加字段。这样才能对应。

有一个不好的地方是,这个文件只须一改就是针对所有的表单提交,不过这只是一个办法,供参考,最后还要灵活应用。



希望以上内容可以解决您的问题!
如有其他问题欢迎大家一起交流学习!
作者:酱油妹 来源:互联网 关注: 时间:2020-06-29 08:38
版权声明:凡注明来源为www.jiangyoumei.com的均为本站原创,转载请注明来源。
本文网址:http://www.jiangyoumei.com/jiaocheng/jiqiao/20200629/7822.html
►凡本站提供教程均已验证教程的准确性。
►为提高用户在织梦后台添加栏目的灵活性(可随意添加/删除栏目),并保持(管理后台添加/删除栏目)与前端网站栏目的一致,本站模板中栏目均未固定,用户直接搜索typeid=''并替换''中的数字为所需栏目id即可。
►本站提供各种类型织梦模板!希望在这里找到喜欢的。下载本站模板,用户直接替换相关文字和图片即可。
►本站仅提供织梦模板即(DEDE模板),(除另外说明)均不带织梦安装程序及数据,用户直接覆盖默认模板即可。
►本站所有资源(包括源码、模板、插件等)仅供学习与参考,请勿用于商业用途。
►如有其他问题,请加网站客服QQ(375750496)进行交流。
相关织梦教程
在线客服

织梦模板 整站模板 新手教程 使用技巧