php---tp框架---表单验证
2021-06-29 15:04
YPE html>
标签:inpu head conf 手册 log 效果 方法 mit span
自动验证是ThinkPHP模型层提供的一种数据验证方法,可以在使用create创建数据对象的时候自动进行数据验证。分为静态验证和动态验证。
关于基础知识,请查看手册“自动验证”一章。
一、静态验证
(1)在Ceshi/Controller/路径下新建Yanzheng控制器。
YanzhengController.class.php页面
注意:静态定义方式因为必须定义模型类,所以只能用D函数实例化模型
create方法是对表单提交的POST数据进行自动验证
show(); }else{ //验证要在model层写 if($n->create()){ echo "验证通过!"; }else{ echo $n->getError(); //获取错误信息 } } } public function _empty(){ echo "您访问的操作方法不存在!"; } }
(2)在view层做jtyz.html页面
效果图:
(3)在model层写静态验证的验证:(路径如图)
UsersModel.class.php
依次验证效果图:
当全部为空时,点击验证
提示:
当输入用户名后,点击验证:
显示:
两次密码输入不一致时,会提示;年龄不在范围内会提示;邮箱格式不正确时会提示;否则会提示验证通过。
二、动态验证
(1) YanzhengController.class.php页面
show(); // // }else{ // //验证要在model层写 // if($n->create()){ // echo "验证通过!"; // }else{ // echo $n->getError(); //获取错误信息 // } // } // } //动态 public function dtyz(){ if(empty($_POST)){ $this->show(); } else { //验证规则 $rules = array( array(‘uid‘,‘require‘,‘用户名不能为空!‘), ); $u= M("users"); if($u->validate($rules)->create()){ $this->ajaxReturn("OK","eval"); //如果成功 }else{ $this->ajaxReturn($u->getError(),"eval"); //如果不成功 } } } public function _empty(){ echo "您访问的操作方法不存在!"; } }
(2) dtyz.html页面:
看一下效果:
当文本框失去焦点时:
当文本框有内容时,再失去焦点:
php---tp框架---表单验证
标签:inpu head conf 手册 log 效果 方法 mit span
原文地址:http://www.cnblogs.com/chenguanai/p/7141031.html