php---tp框架---表单验证

2021-06-29 15:04

阅读:553

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


评论


亲,登录后才可以留言!