怎样给Dedecms织梦网站自定义表单设置必填项
给php的这个函数强制设定编码格式,这样也能解决这个问题,具体对应的位置是
①:dede/article_addphp 这个php文件中查找
$title = htmlspecialchars(cn_substrR($title,$cfg_title_maxlen));
改成
$title = htmlspecialchars(cn_substrR($title,$cfg_title_maxlen),ENT_COMPAT ,'GB2312');
②:然后再找到dede/article_editphp这个php文件中查找
$title = htmlspecialchars(cn_substrR($title,$cfg_title_maxlen));
改成
$title = htmlspecialchars(cn_substrR($title,$cfg_title_maxlen),ENT_COMPAT ,'GB2312');
③:include/ckeditor/ckeditor_php5php 查找
htmlspecialchars($value)
改为htmlspecialchars($value, ENT_COMPAT ,'GB2312')
您好,朋友。跟版网团队很高兴能为您解答:
这个的话比较容易,在对应的模板文件中写个判断即可,具体做法如下:
比如你的字段为:name,在内容页中的写法如下:
{dede:fieldname runphp='yes'}if(@me =='')
{@me='';}
else
{@me=@me;}
{/dede:fieldname}
在其他标签中调用的方法如下:
[field:name runphp='yes']if(@me ==''){@me='';}else{@me=@me;}
[/field:name]
希望我的回答能够帮到您!
1编辑器打开plusdiyphp
2在40行左右找到此行代码:
$dede_fields=empty($dede_fields)'':trim($dede_fields);
3在这一行代码之下,加入代码,复制的话删掉代码中的空行
//增加必填字段判断
if($required!=''){
if(preg_match('/,/',$required))
{
$requireds=explode(',',$required);
foreach($requiredsas$field){
if($$field==''){
showMsg('带号的为必填内容,请正确填写','-1');
exit();
}
}
}else{
if($required==''){
showMsg('带号的为必填内容,请正确填写','-1');
exit();
}
}
}
//end
4保存完成后,在表单模版页面找到这行代码:
<formaction="/plus/diyphp"enctype="multipart/form-data"method="post">
在这行代码之下,加入代码:
<inputtype="hidden"name="required"value="数据字段名,数据字段名"/>
注意这行代码要修改下,根据你的表单所需要设置的必填项,例如设置“姓名”、“邮箱”为必填项
添加新字段--“表单提示文字”:姓名--“字段名称”:name
添加新字段--“表单提示文字”:邮箱--“字段名称”:email
此行代码应为:
<inputtype="hidden"name="required"value="name,email"/>
这样就把这两个选项设置为必填项了,如果没有填写就提交,会打开窗口提示“带号的为必填内容,请正确填写”,当然,这一句话可以改成其它的文字
网上看到另一种方法,未测试,仅作为资料收藏
js方法:
1先在要发布表单的模板上加
<scriptsrc='你的路径/jsjs'type="text/javascript"></script>
2在你自定义的路径新建文件jsjs,然后复制以下内容粘贴保存,代码:
<!--
$(document)ready(function()
{
//验证
$('complain')submit(function()
{
if($('name')val()==""){
$('name')focus();
alert("用户名不能为空!");
returnfalse;
}
if($('tel')val()=="")
{
$('tel')focus();
alert("联系电话不能为空!");
returnfalse;
}
if($('title')val()=="")
{
$('title')focus();
alert("标题不能为空!");
returnfalse;
}
if($('text')val()=="")
{
$('text')focus();
alert("具体内容不能为空!");
returnfalse;
}
})
});
-->
注:
$('complain')submit(function()//complain为自定义表单的ID,如果生成的表单没有可以自行加上,即id="complain"
if($('name')val()==""){
$('name')focus();//name为要验证表单中的ID,如想让用户名不能为空,在后台用户名的数据字段名设为name,下同
3设置好后更新就可以看到效果了
希望本文所述对大家的dedecms建站有所帮助。
不知道楼主具体情况,我列了4个常见的文档无法调用出来的问题你先做个排除法吧,具体情况具体分析,如果还是不行 咱们再找问题。
1、文档是否发布在对应的分类,例如有两个一级分类,一个是新闻一个是公告,你的新闻发布在公告的分类里,前台肯定不会显示。
2、发布完文档是否点击了“生成”标签里的“更新首页HTML”和“更新文档HTML”,dedecms大多数情况做的是静态网站,因此发布完的内容需要生成在会在列表页和首页出现。
3、调用是否有问题,检查文档列表调用的分类ID 是否为发布文档分类的ID,这个要检查模板。
4、页面的HTML或CSS是否存在问题,页面样式也可能会造成此种情况,请查看生成后的页面源文件,来排除这个原因。
0条评论