主要实现的是用户输入内容进行验证,本文是继 ajax提交form,同时提供form表单验证,直接贴上代码
<?php /** * Form check class * 格式: uname = array('require'=>'true','max'=>3,'min'=>'1','theme'=> '用户名',reg="tel/qq/num/cn/en/reg") * @author Administrator * */ class Form{ private $_form_data = array(); private $_error_msg = ''; private $_default_regs = array('num'=>'/^[0-9]*$/', 'tel'=>'/^((\(\d{2,3}\))|(\d{3}\-))?13\d{9}$/', 'qq'=>'/^\d{5,10}$/', 'cn'=>'', 'en'=>'', 'email'=>'/^[0-9a-zA-Z]+@(([0-9a-zA-Z]+)[.])+[a-z]{2,4}$/i'); public function Form($form_data = ''){ $this->_form_data = $form_data; } public function check(){ $is_check = true; foreach ($this->_form_data as $key=>$item){ $is_check = $this->check_item($item); if(!$is_check){ break; } } return $is_check; } public function init_form($form_data){ $this->_form_data = $form_data; } public function check_item($item){ $is_check = true; foreach ($item as $key=>$obj){ $check_func = 'check_'.$key; if(method_exists($this, $check_func)){ $is_check = $this->$check_func($item); } if(!$is_check){ break; } } return $is_check; } public function error_msg(){ return $this->_error_msg; } private function check_require($item){ $require_exp_true = $item['require'] == true && !empty($item['value']); if($require_exp_true || $item['require']==false){ return true; } return $this->init_error($item['theme'].'不能为空!'); } private function check_max($item){ $str_length = strlen($item['value']); if($str_length <= $item['max']){ return true; } return $this->init_error($item['theme'].'最多'.$item['max'].'个字符'); } private function check_min($item){ $str_length = strlen($item['value']); if($str_length >= $item['min']){ return true; } return $this->init_error($item['theme'].'最少'.$item['min'].'个字符'); } private function check_reg($item){ if(array_key_exists($item['reg'], $this->_default_regs)){ return $this->reg_defaults($item); } return $this->reg_express($item); } private function reg_defaults($item){ $reg = $this->_default_regs[$item['reg']]; if(preg_match($reg,$item['value'])){ return true; } return $this->init_error($item['theme'].'格式不对'); } private function reg_express($item){ } private function init_error($msg){ $this->_error_msg = $msg; return false; } }
使用方法
1、init_form()初始化数据
数据格式
$form_data = array('username'=> array('require'=>true, 'theme'=> '用户名', 'value'=> $data['username']), 'passwd'=> array('require'=>true, 'theme'=> '密码', 'value'=> $data['passwd']), 'code'=> array('require'=>true, 'theme'=> '验证码', 'value'=> $data['code'], 'max'=> 4 , 'min'=>4, 'reg'=>'num'));
2、check()方法验证,返回true/false
3、error_msg(),返回验证失败信息
相关推荐
YouYaX,开源BBS,php原创框架结构论坛程序 YouYaX是个人自主开发的原创论坛系统,简洁,拓展性强,代码开源。 1、体积小 — 安装包大小约2M,功能齐全 2、易开发 — 任何有PHP开发经验的站长均可以很方便的修改、...
4、周密的安全策略和攻击防护:表单令牌机制、字段类型验证、输入过滤、上传安全过滤、防止XSS攻击和目录安全保护等功能,对SQL参数进行敏感字符过滤、对密码、cookie进行了不可逆加密处理,数据库备份功能、对管理...
小旋风蜘蛛池站群系统源码X4版本... · 修复伪原创词汇后台不能显示问题 · 修复采集内容的问题 · 修复整篇文章模式缩略图调用问题 · 修复分组内容库调用出错问题 · 修复后台查看蜘蛛记录不能识别手机模板
多奥淘宝客程序V6.2简称淘客程序,采用...本程序免费无商业版,有什么问题及建议可以去淘宝客程序推广交流论坛http://www.duoao.cn/或淘宝客推广高手交流QQ群:176440164(公益群广告止步,验证信息:淘客程序)
多奥淘宝客程序V6.2简称淘客程序,采用...本程序免费无商业版,有什么问题及建议可以去淘宝客程序推广交流论坛http://www.duoao.cn/或淘宝客推广高手交流QQ群:48392299(公益群广告止步,验证信息:淘客程序)
多奥淘宝客程序V6.2简称淘客程序,采用...本程序免费无商业版,有什么问题及建议可以去淘宝客程序推广交流论坛http://www.duoao.cn/或淘宝客推广高手交流QQ群:48392299(公益群广告止步,验证信息:淘客程序)
YouYaX是个人自主开发的原创论坛系统,简洁,拓展性强,代码开源。 YouYaX 4.0 更新日志: 1、加入了提问帖子,金币数,并使之与原有的普通帖子有机结合 2、加入了发帖、回帖的限制时间 YY论坛特点: 1、...
后台开发语言:PHP (原生架构) 前台开发语言:uniapp socket 推送:GateWayWorker(支持分布式部署,高并发,抗压能力强,未采用第三方付费推送服务) 数据库:mysql 开发工具:hbuiderX,phpstorm 目前支持 ...
仿IPC简约WordPress主题是一款基于ipc主题基础之上进行完善的wordpress博客主题,并非本人原创,在这里深深的表示感谢。该主题相较于原主题,添加完善了一些功能。 仿IPC简约WordPress主题增加的功能有: 1、解决...
采集源 增加 词语级纯原创生成的功能(中文词库data/cnmaker,英文data/enmaker)支持随机生成附件图片(图片库data/makerpic) 采集中心 新建关键词 可选择采入自带CMS或DZ/DZX/DZX2/PW/WP/织梦/帝国 论坛读取...
程序说明网摘等级:删除 私有 验证 公开 高级 推荐 精华用户等级:删除 锁定 验证 普通 高级 贵宾 操作员 管理员各个等级的用户分别对应拥有各个等级的网摘权限,其中操作员可以添加“图片”类型的网摘,管理员可以...
仿IPC简约WordPress主题是一款基于ipc主题基础之上进行完善的wordpress博客主题,并非本人原创,在这里深深的表示感谢。该主题相较于原主题,添加完善了一些功能。增加的功能有:1、解决了原主题的一些浏览器不兼容...
配置下SMTP发信,「后台 – WPJAM – 扩展管理 – SMTP 发信」,因为前端使用找回密码等功能需要向用户发送验证邮件,如果不开启用户注册仅仅是个人博客,可以忽略这个。 建议使用Linux服务器,win服务器没用过所以...
5.33更新,控制后台增加显示缓存容量大,并且提供一个清空缓存插件,此外,插件部分增强安全性验证,修复5.32使用exit错误导致停止生成缓存的BUGYouYaX 5.27更新,加强网站“增删改”检测,修复一个CSRF漏洞、 ...
但是,有加密就有解密,不能绝对保证代码的安全性,特作此声明:本系统由作者原创,版权归作者所有,仅供购买者使用,未经允许不准泄漏和破解程序中任何部分的代码,作者将保留追究法律责任的权利。 2.5更新日志 ...
3、完善后台登录的安全验证问题; 4、后台增加积分兑换比例的设置表单; 5、修复用户兑换积分程序模块的BUG; 6、增强系统坚固性安全性、防SQL注入、防跨站脚本攻击; 2014-10-15 1、删除站内信功能; 2、优化模版代码;...
结束,而是在后台运行。所以这时改动程序,再运行时便会出错。你可以按下调 试栏上面的红色Stop 停止按钮来停止程序运行。你也可以在windows 任务管理 器的进程中将该进程结束,而后再次运行就没问题了,当然先关闭...
余志龙、陈昱勋、郑名杰、陈小风,分别来自手机制造业、电视媒体业、网络、电信产业、软件开发等领域,擅长嵌入式系统软件设计、J2ME游戏开发、Android开发,以及12EE、JSP、Servlet、Java Bean、PHP、C#等程序语言...
余志龙、陈昱勋、郑名杰、陈小风,分别来自手机制造业、电视媒体业、网络、电信产业、软件开发等领域,擅长嵌入式系统软件设计、J2ME游戏开发、Android开发,以及12EE、JSP、Servlet、Java Bean、PHP、C#等程序语言...