这篇文章主要介绍了关于thinkphp框架表单验证和ajax验证问题的分析,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下
tp数据验证有两种方式,一种是静态方式,一种是动态方式,下面给大家带来了ThinkPhp 框架表单验证及ajax验证问题,感兴趣的朋友一起看看吧
之前的表单验证都是用js写的,这里也可以使用tp框架的验证。但是两者比较而言还是js验证比较好,因为tp框架验证会运行后台代码,这样运行速度和效率就会下降。
自动验证是ThinkPHP模型层提供的一种数据验证方法,可以在使用create创建数据对象的时候自动进行数据验证。验证的代码要写在模型层即Model里面。
数据验证有两种方式:
立即学习“PHP免费学习笔记(深入)”;
静态方式:在模型类里面通过$_validate属性定义验证规则。静态方式定义好以后其它地方都可以使用。
动态方式:使用模型类的validate方法动态创建自动验证规则。动态方式比较灵活,哪里使用就写,其它地方不可以使用。
无论是什么方式,验证规则的定义是统一的规则,定义格式为:
show();
}
else
{
$y=new \Home\Model\YongHuuModel();
$r=$y->create();
if($r)
{
$y->add();
}
else{
die($y->getError());
}
}
}
}
2.在thinkphp\Application\Home\View\Test写上对应的html文件
无标题文档
3.在thinkphp\Application\Home\Model里面写模型文件,也就是验证的方法。
二、动态验证
1.在Application\Home\Controller里面写方法
show();//显示add.html页面 } else//如果post数组不为空 { $y = D("YongHu"); $arr = array(//动态验证就是需要在哪验证就在哪里写验证方法。 array("uid","require","用户名不能为空",0),//讲验证的方法写在方法里面 ); if($y->validate($arr)->create())//这里要先调用validate方法,然后将写的验证方法放到validate里面 { $y->add(); } else { die($y->getError()); } } } }2.在thinkphp\Application\Home\View\Test写上对应的html文件
无标题文档
3.在thinkphp\Application\Home\Model里面写模型文件。
三、Ajax做验证
tp动态验证和静态验证都有一个很大的缺点,那就是在提示错误信息的时候都要跳转到其它页面显示出错误信息。如果需要在当前页面显示出错误信息,就需要用ajax做验证。
1.写显示和ajax处理方法
show(); } public function test()//ajax处理方法 { $y = D("YongHu"); $arr = array(//动态验证就是需要在哪验证就在哪里写验证方法。 array("uid","require","用户名不能为空"),//讲验证的方法写在方法里面 ); if($y->validate($arr)->create())//这里要先调用validate方法,然后将写的验证方法放到validate里面 { $this->ajaxReturn("通过验证","eval"); } else { $this->ajaxReturn($y->getError(),"eval"); } } }2.写显示页面
无标题文档 用户名:
以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网!
相关推荐:
ThinkPHP3.2框架使用addAll()批量插入数据的方法










