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