织梦DedeCMS的自定义表单如何进行号码邮箱等数据校验,并且过滤一些无聊或者别有用心的用户提交的垃圾信息。提高织梦系统的安全性,防止恶意提交的方式

步骤一:前端js判断号码邮箱等格式验证
<form action="/plus/diy.php" enctype="multipart/form-data" method="post" name="gbook" onsubmit="return saveIt();"> <input type="hidden" name="action" value="post" /> <input type="hidden" name="diyid" value="1" /> <input type="hidden" name="do" value="2" /> <input name="name" id="name" type="text" placeholder=" 姓名:" /> <input name="tel" id="tel" type="text" placeholder=" *:" /> <input name="mail" id="mail" type="text" placeholder="邮箱:" /> <textarea name="nr" id="nr"></textarea> <input type="submit" name="submit" value="提交" /> <input type="reset" name="reset" value="重置" /> <input type="hidden" name="dede_fields" value="name,text;tel,text;mail,text;nr,multitext" /> <input type="hidden" name="dede_fieldshash" value="657cee014gga977ca8ef4965fjh7469a" /> </form>
<!--表单提交*邮箱等数据验证-->
<script language="JavaScript" type="text/javascript">
function saveIt()
{
with(gbook)
{
if (name.value=="")
{
alert('请填写姓名!');
name.focus();
return false;
}
if (tel.value=="")
{
alert('请填写手机号!');
tel.focus();
return false;
}
var myreg = /^((1[0-9][0-9]{1})+\d{8})$/;
if(!myreg.test($("#tel").val()))
{
alert('请填写正确的手机号码!');
tel.focus();
return false;
}
if (mail.value.length!=0)
{
if(
mail.value.charAt(0)=="."||
mail.value.charAt(0)=="@"||
mail.value.indexOf('@')==-1||
mail.value.indexOf('.')==-1||
mail.value.indexOf("@")==mail.value.length-1||
mail.value.lastIndexOf(".")==mail.value.length-1
)
{
alert('邮箱地址格式不正确!');
mail.focus();
return false;
}
}
if (nr.value.length>150)
{
alert('留言内容太多!');
nr.focus();
return false;
}
}
}
</script>
*步这个只是前端网页的数据验证,只能防范一些不懂网站制作的用户,稍微懂些程序的用户,就可以绕开前台直接向系统提交数据,这就需要在提交的地址diy.php文件里进行相应的数据校验了。比如校验用户提交的某个字段是否是手机号、邮箱等。我们可以采用PHP正则表达式来进行验证,修改方法如下:
打开plus/diy.php文件找到以下代码:
if(!is_array($diyform))
{
showmsg('自定义表单不存在', '-1');
exit();
}
在下面添加一下代码:
//判断手机号码是否正确
if(!eregi("^((13[0-9])|147|(15[0-35-9])|180|182|(18[5-9]))[0-9]{8}$",$tel))
{ showMsg('手机号码不对,请正确填写', '-1');
exit();
}
//验证邮箱
if (!eregi("^[_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,3}$",$mail))
{showMsg('请您填写正确的E-Mail 地址!', '-1');
exit();
}
解决以上问题之后,还有一个问题,就是某些用户有意或者无意的提交了多次表单,这也会给信息收集工作带来巨大的压力,所以我们也要努力地降低这个方面的工作量。我们可以采用验证Cookies方法,达到织梦DedeCMS自定义表单限制IP24小时只能发布一次功能。
步骤二:紧接着第二步添加代码的下面加入以下代码
//检测游客是否已经提交过表单
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,'/');
}当然,经过以上的操作,织梦DedeCMS的自定义表单并不是就完全的安全了,别人还可以清空Cookies或者使用VPN之类的软件等进行继续重复提交,不过这些就不需要考虑那么多了,毕竟道高一尺魔高一丈,不可能百分百完美的。
# 可爱图标网站建设
# 还有一个
# 会给
# 互联网营销短视频推广策略
# 加盟网站建设推广
# 茂名全网网站建设
# 铜陵seo公司便捷火星
# 芜湖谷歌seo方案分析
# 黄山seo网站优化报价
# 达观数据网站建设
# 社旗网站推广公司十强
# 哈尔滨品牌网站建设报价
# 不存在
# 网站建设tiktok
# seo博客广告
# 眉山网站建设哪个好
# 移动优化网站有什么用
# 青州企业网站建设推广
# 漳州网站推广和内容
# 青岛网站建设路美食
# 设计影响seo因素
# 淮北康乐社区网站建设
# 大陆推广营销
# 太多
# 过滤垃圾信息
# 织梦CMS教程
# 织梦自定义表单
# 自定义表单
# 号码邮箱验证
# 宋体
# 表单
# 自定义
# 请填写
# 我们可以
# 不可能
# 织梦自定义表单加入号码邮箱格式验证
# 还可以
# 也要
# 就不
# 那么多
# 请您
# 不懂
# 这也
# 这就
# 别有用心
# 留言内容
相关栏目:
【
Google疑问12 】
【
Facebook疑问10 】
【
网络优化91478 】
【
技术知识72672 】
【
云计算0 】
【
GEO优化84317 】
【
优选文章0 】
【
营销推广36048 】
【
网络运营41350 】
【
案例网站102563 】
【
AI智能45237 】
相关推荐:
织梦DEDECMS *一键登录插件返回空白解决方法_织梦CMS教程
建站代理平台哪家强?批量做词与精准选词实现霸屏效果
建站之星下载版如何获取与安装?
织梦站内优化SEO之标题优化教程_SEO优化教程
香港服务器WordPress建站指南:SEO优化与高效部署策略
织梦实现全站按TAG和关键字调用相关文章教程_织梦CMS教程
建站助手安装PHP5.6为何频繁报错?
织梦整合kindeditor文本编辑器修改多图片上传显示限制大小和张数_织梦CMS教程
魔毅自助建站系统:模板定制与SEO优化一键生成指南
如何在织梦DEDECMS上运行php代码和mysql语句_织梦CMS教程
织梦dedecms搜索时间间隔修改教程_织梦CMS教程
高端建站三要素:定制模板、企业官网与响应式设计优化
韩国网站服务器搭建指南:VPS选购、域名解析与DNS配置推荐
如何快速登录WAP自助建站平台?
网站*自定义分享代码,可以自定义分享图片标题描述(支持https)_织梦CMS教程
织梦首页调用指定一篇文章body内容的方法_织梦CMS教程
织梦dedecms会员中心调用出需要的循环文档_织梦CMS教程
建站之星代理费用多少?最新价格详情介绍
织梦dedecms 5.7怎样在任意位置显示自由列表标题+链接_织梦CMS教程
阿里云提示织梦后台文件media_add.php任意上传漏洞解决办法 _织梦CMS教程
织梦网站SEO优化之标题过长被截断解决方法_SEO优化教程
织梦dedecms获取会员登录状态的二种方法_织梦CMS教程
织梦dedecms文章arclist标签实现分页的教程_织梦CMS教程
织梦noflag标签如何过滤多个参数_织梦CMS教程
如何在Windows虚拟主机上快速搭建网站?
织梦dedecms列表页按权重排序输出文章_织梦CMS教程
建站助手一键生成智能网站,AI助手+模板库极速部署
织梦搜索页面实现相关搜索调用_织梦CMS教程
织梦网站怎么根据IP获取当地的天气预报_织梦CMS教程
建站助手开启FTP配置教程:服务器管理与站点搭建步骤解析
织梦dedecms做到这几条安全设置,网站安全达到99%_织梦CMS教程
建站之星智能建站系统与服务器配置一键生成指南
织梦php7数据库备份无结果BUG修复方法_织梦CMS教程
织梦cms图片太大自动按比例缩放_织梦CMS教程
如何用搬瓦工VPS快速搭建个人网站?
高性价比服务器租赁——企业级配置与24小时运维服务
二级目录301重定向到二级域名方法_织梦CMS教程
织梦dedecms自定义表单添加地区联动显示数字解决方法_织梦CMS教程
全球各国上班时间表外贸邮件时间
帝国CMS商城系统使用常见问题_帝国CMS教程
网站二级目录绑定到二级域名_织梦CMS教程
如何快速搭建自助建站会员专属系统?
织梦让channelartlist标签里的channel支持currentstyle_织梦CMS教程
织梦kindeditor文本编辑器增加“查找替换”功能_织梦CMS教程
建站之星模板如何自定义颜色与字体样式?
建站ABC备案流程中有哪些关键注意事项?
建站之星模板安装失败?如何解决环境配置问题?
织梦列表页排序按权重排序修改方法_织梦CMS教程
建站之星设计师计划:智能建站系统如何实现多端适配模板?
建站之星智能模板:企业官网搭建与SEO优化一站式解决方案
2018-04-13
南京市珐之弘网络技术有限公司专注海外推广十年,是谷歌推广.Facebook广告全球合作伙伴,我们精英化的技术团队为企业提供谷歌海外推广+外贸网站建设+网站维护运营+Google SEO优化+社交营销为您提供一站式海外营销服务。