dede自定义表单实现分步提交,也就是可以下一步下一步
dede织梦如何添加“自定义属性”标签“症状”1、进入后台——系统——SQL命令行工具——运行SQL命令行,添加arcatt表字段:insert into`dede_arcatt`(sortid,att,attname) values(9,‘d‘,‘症状‘)2、添加archives表字段:alter table `dede_archives` modify `flag` set (‘h‘,‘c‘,‘p‘,‘f‘,‘s‘,‘j‘,‘a‘,‘b‘,‘d‘) default NULL 看着加粗的SQL指令,顾名思义是先在表里插入新记录(要添加的属性),然后修改另一个关联表的flag字段以添加标签d。没错,就是这样简单,你已经成功添加了新的属性并可以模板调用了。当然你也可以用phpmyadmin数据库工具傻瓜式添加属性。需要说明的是: 代码第1行:values(9,‘d‘,‘新自定义属性‘) 是根据我们需要自行定义的,其中9是sortid的值,是不可重复的,也就是每添加一个自定义属性,sortid的值就应该递增到 10,11,12,以此类推!d是alt的值,是自定义属性的标记,与已存在的标记符号不能重复,“症状”是中文名称,是方便人们直观地勒戒自定义 属性的含义的,可以根据需要改为其他名字,不影响调用。代码第2行:set (‘c‘,‘h‘,‘p‘,‘f‘,‘s‘,‘j‘,‘a‘,‘b‘,‘d‘),括号中的字母对应已存在的标记符号和您需要添加的标记符号,并按顺序录入,不得改变先后顺序。例如,d排序第9位,则对应第一行代码中添加的自定义属性““评论d”。2、后台——模板——默认模板管理——indexhtm在“indexhtm”中进行修改,在需要调用症状的地方添加代码“{dede:arclist flag=‘d‘ limit=‘0,1‘ infolen=‘230‘}”3、添加文档,在自定义属性中将“新自定义属性”勾选,就可实现,勾选的文档出现在首页,为勾选出现在内页。删除自定义属性:
DELETE FROM dede_arcatt WHERE sortid=‘9‘
dedecms:织梦文章如何添加“自定义属性”标签(sql命令行工具)
标签:
你这个最好是加验证码,具体的添加方法可以到参考资料里去看一下。
给dedeCMS自定义表单加验证码防恶意灌水
http://blogbashanrencom/web/add-to-dedecms-custom-form-validation-code-against-malicious-irrigationhtml
比如你有六个表单分两次提交:
<form action="diyphp">
表单一
表单二
表单三
submit后跳转到下一页,获取本次提交的id
</form>
下一页表单根据上次提交的表单id填充值为空的表单
<form action="diyphp">
表单四
表单五
表单刘
submit后直接显示成功
</form>
这个自定义表单,需要你自自定义字段的,字段定义好,浏览查看源代码,代码就会自己出来 了、
下一步:
下一步就是定义字段:
字段定义好:
直接前台浏览,然后查看源代码就好了。
希望对你有所帮助。
首先打开织梦自定义表单,然后添加字段,比如联系人(单行文本),****(单行文本),地址(单行文本),留言内容(单行文本),留言时间(单行文本)等字段
注意:留言时间这里不要选择“时间类型”,选择默认的“文本形式”就可以。
自定义表单在模板中修改如下:
<form action="/plus/diyphp" enctype="multipart/form-data" method="post" name="form"onsubmit="return CheckForm();">
<input type="hidden" name="action" value="post" />
<input type="hidden" name="diyid" value="1" />
<input type="hidden" name="do" value="2" />
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr>
<td>提交时间</td>
<td><input name="mytime" value="" type="text" id="mytime" /><!-- 如不需要在前台显示的话可以修改type="hidden" -->
<script type="text/javascript">
windowonload = function(){
var nowDate = new Date();
var str = nowDategetFullYear()+"-"+(nowDategetMonth() + 1)+"-"+nowDategetDate()+" "+nowDategetHours()+":"+nowDategetMinutes()+":"+nowDategetSeconds();
documentgetElementById("mytime")value=str;
}
</script>
</td>
</tr>
<tr><td><input type="hidden" name="dede_fields" value="mytime,textchar" />
<input type="hidden" name="dede_fieldshash" value="849a871768b5942ee259e8f7af736194" />
<label>
<input class="btn_tj" type="submit" name="Submit" value=" 提交" />
</label></td></tr>
</table>
</form>
1编辑器打开\plus\diyphp
2在40行左右找到此行代码:
$dede_fields = empty($dede_fields) '' : trim($dede_fields);
3在这一行代码之下,加入代码,复制的话删掉代码中的空行
//增加必填字段判断
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
4保存完成后,在表单模版页面找到这行代码:
1
<form action="/plus/diyphp" enctype="multipart/form-data" method="post">
在这行代码之下,加入代码:
1
<input type="hidden" name="required" value="数据字段名,数据字段名" />
注意这行代码要修改下,根据你的表单所需要设置的必填项,例如设置“姓名”、“邮箱”为必填项
添加新字段--“表单提示文字”:姓名--“字段名称”:name
添加新字段--“表单提示文字”:邮箱--“字段名称”:email
此行代码应为:
1
<input type="hidden" name="required" value="name,email" />
这样就把这两个选项设置为必填项了,如果没有填写就提交,会打开窗口提示“带号的为必填内容,请正确填写”,当然,这一句话可以改成其它的文字
网上看到另一种方法,未测试,仅作为资料收藏
js方法:
1先在要发布表单的模板上加
1
<script src='你的路径/jsjs' type="text/javascript"></script>
2在你自定义的路径新建文件jsjs,然后复制以下内容粘贴保存,代码:
<!--
$(document)ready(function()
{
//验证
$('#complain')submit(function ()
{
if($('#name')val()==""){
$('#name')focus();
alert("用户名不能为空!");
return false;
}
if($('#tel')val()=="")
{
$('#tel')focus();
alert("联系电话不能为空!");
return false;
}
if($('#title')val()=="")
{
$('#title')focus();
alert("标题不能为空!");
return false;
}
if($('#text')val()=="")
{
$('#text')focus();
alert("具体内容不能为空!");
return false;
}
})
});
-->
注:
$('#complain')submit(function () //complain为自定义表单的ID,如果生成的表单没有可以自行加上,即 id="complain"
if($('#name')val()==""){
$('#name')focus();//#name为要验证表单中的ID,如想让用户名不能为空,在后台用户名的数据字段名设为name,下同
3设置好后更新就可以看到效果了
希望本文所述对大家的dedecms建站有所帮助。
0条评论