本文目录一览:
- 1、如何设置织梦cms自定义表单字段为必填项
- 2、织梦dedecms如何对列表添加判断语句
- 3、织梦cms表单提交判断正确的电话号码怎么写?
- 4、dedecms我新建自定义表单后,在另一台电脑上访问我的网站直接加上plus/diy.php?action=post&diyid=1
- 5、dedecms如何防止表单重复提交,判断句怎么写
- 6、dedecms中怎么加入表单验证插件
如何设置织梦cms自定义表单字段为必填项
1.编辑器打开\plus\diy.php
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/diy.php" 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="你的路径/js.js" type="text/javascript"/script
2.在你自定义的路径新建文件js.js,然后复制以下内容粘贴保存,代码:
!--
$(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建站有所帮助。
织梦dedecms如何对列表添加判断语句
本文标签: 织梦判断{channelartlist}这个标签在织梦dedecms中是频道列表的意思,加上这个标签,系统的所有栏目就会按顺序排列显示,今天tom在做模板的时候想在织梦dedecms的频道列表中对列表的分布进行区分,也就是排在第一的栏目采用一种class样式,排在第二的栏目则采用另一种class样式,在wp中这种功能可以通过简单的php语言实现,现在tom研究发现在织梦dedecms中也不必望洋兴叹了,利用dede:global标签也可以实现奇偶判别,从而达到这种效果。实现的方法如下:{dede:channelartlist}
织梦cms表单提交判断正确的电话号码怎么写?
方法有多个:
第一种JS判断表单提交,最简单的方法。不过我用JS验证,判断错误后return fasle 后表单还会提交,所以就失败了。
第二种就是在dedecms的处理页diy.php里面做验证,写正则表达式判断。
/plus/diy.php加验证:
if($fieldinfo[0]=='yuyue_lianxi'){
$tel = ${$fieldinfo[0]};
if(!eregi("^13[0-9]{9}|15[0-9]{9}|14[0-9]{9}|18[0-9]{9}$",$tel)){
showMsg('填写的手机号码不正确','-1');
exit;
}
}
放在遍历表单数据后就行了!
dedecms我新建自定义表单后,在另一台电脑上访问我的网站直接加上plus/diy.php?action=post&diyid=1
1,增加checkLogin();检查是否有用户登录,应该是遍历下cookie,uid;
2,根据用户是否存在,查询用户类别checkRight();以登录用户ID查询用户是否是超级管理员;
3,根据判断显示表单递交还是返回权限错误;
if(checkLogin()checkRight()){
$post;
}else{
throwError();
}
dedecms如何防止表单重复提交,判断句怎么写
那你就直接判断这个用户或者ip 有没有提交,如果已经提交了就返回。
dedecms中怎么加入表单验证插件
我们在使用织梦建站的时候会经常碰到织梦dedecms自定义表单功能,方便我们做网站的在线留言,在线下单,在线报名等订单信息提交,我们也发布了( 织梦自定义表单教程 ) 不懂的朋友可以点击看看。但是用户可以无限制重复提交,这样就给网站带来非常高的维护成本,为了防止恶意提交,下面就告诉大家如何设置每个用户24小时内只能提交一次自定义表单:
首先我们打开/plus/diy.php文件,在里面找到如下代码:
if(!is_array($diyform))
{
showmsg('自定义表单不存在', '-1');
exit();
}
在其下面添加如下代码:
//检测游客
if(isset($_COOKIE['VOTE_MEMBER_IP']))
{
if($_COOKIE['VOTE_MEMBER_IP'] == $_SERVER['REMOTE_ADDR'])
{
ShowMsg('您已经填写过表单啦','-1');
exit();
} else {
setcookie('VOTE_MEMBER_IP',$_SERVER['REMOTE_ADDR'],time()*$row['spec']*3600,'/');
}
} else { setcookie('VOTE_MEMBER_IP',$_SERVER['REMOTE_ADDR'],time()*$row['spec']*3600,'/'); }
点评:添加完成后保存覆盖原来的就可以了,此方法是通过验证cookie的方式防止用户重复提交,如果用户清除cookie的话还是可以提交的。