宝哥软件园

ThinkPHP框架表单验证操作方法

编辑:宝哥软件园 来源:互联网 时间:2021-09-04

自动验证是ThinkPHP模型层提供的一种数据验证方法,可以在使用创造创建数据对象的时候自动进行数据验证。分为静态验证和动态验证。

一、静态验证

(1)在家庭/控制器/路径下新建索引控制器索引控制器

IndexController.class.php页面

注意:静态定义方式因为必须定义模型类,所以只能用D函数实例化模型

创造方法是对表单提交的邮政数据进行自动验证

?phpnamespace主页控制器;使用思考控制器;类索引控制器扩展了控制器{公共函数阎正(){ $ u=D(' users ');//造一个子类对象如果(空($ _ POST)){ $ this-show();}else{ if($u-create()){//验证"回声"验证通过;} else { echo $ u-GetError();//获取错误信息} } }} (2)在视图/索引文件夹下做yanzheng.html页面

!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN ' ' http://www .w3。org/TR/XHTML 1/DTD/XHTML 1-Transitional。DTD ' html xmlns=' http://www .w3。org/1999/XHTML ' hearteta http-equiv=' Content-Type ' Content=' text/html;charset=utf-8' /title无标题文档/title脚本src=' http : _ _ ROOT _ _/Public/js/jquery-3。2 .0 .量滴js '/script/head dyh 1验证界面/h1form action='__ACTION__ '方法='post'div用户名:输入类型=' text ' name=' uid '/div div密码:输入类型=' password ' name=' pwd 1 '/div确认密码:输入类型=' password ' name=' pwd 2 '/div年龄:输入类型=' text ' name=' age '/div div邮箱:输入类型=“文本”名称='电子邮件'/div预测类型='提交'值='验证//div/表单/正文/html效果图:

(3)在模型层写静态验证的验证:(路径如图)

UsersModel.class.php

?phpnamespace主页模型使用思考模型;类用户模型扩展了模型{ //添加验证条件受保护的$_validate=array(array('uid ',' require ','用户名不能为空!'), //默认情况下用正则进行验证数组(' pwd1 ',' require ','密码不能为空!'),数组(' pwd2 ',' require ','密码不能为空!'),数组(' pwd2 ',' pwd1 ','两次输入的密码不一致,0,'确认'),//验证确认密码是否和密码一致数组('年龄',' 18,50 ','年龄不在范围内,0,'介于'),数组(“电子邮件”,“电子邮件”,邮箱格式不正确'), );}依次验证效果图:

当全部为空时,点击验证

会跳转

输入用户名,其他不输入时,会跳转

两次密码输入不一致时,会提示;年龄不在范围内会提示;邮箱格式不正确时会提示;

输入正确格式内容后

二、动态验证

(1)IndexController.class.php页面

?phpnamespace主页控制器;使用思考控制器;类索引控制器扩展了控制器{公共函数yz(){ $ u=M(' users ');//造一个父类对象如果(空($ _ POST)){ $ this-show();}else{ $rules=array(array('uid ',' require ','用户名不能为空!'), );if($ u-validate($ rules)-create()){//验证$this-ajaxReturn('ok ',' eval ');}else{ $this-ajaxReturn('no ',' eval ');yz.html页面:

!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN ' ' http://www .w3。org/TR/XHTML 1/DTD/XHTML 1-Transitional。DTD ' html xmlns=' http://www .w3。org/1999/XHTML ' hearteta http-equiv=' Content-Type ' Content=' text/html;charset=utf-8' /title无标题文档/title脚本src=' http : _ _ ROOT _ _/Public/js/jquery-3。2 .0 .量滴js '/script/head dyh 1验证界面/h1 form ActIon=' _ _ ActIon _ _ ' method=' post ' divinput type=' text ' name=' uid ' id=' uid '/span id=' ts '/span/divinput type=' submit ' value='验证//div/form/body脚本类型=' text/JavaScript ' $(' # uid ').模糊(函数(){ var uid=$(this)).val();$.ajax({ url:'__ACTION__ ',data:{uid:uid},type:'POST ',dataType:'TEXT ',success:函数(数据){ if(data.trim()=='ok') { $('#ts ').html(")验证通过');} else { $('#ts ').html(")用户名不能为空');} } });})/脚本/html看一下效果:

当文本框失去焦点时:

当文本框有内容时,再失去焦点:

以上所述是小编给大家介绍的ThinkPHP框架表单验证操作方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

更多资讯
游戏推荐
更多+