热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

thinkphp之3.1版本自动验证

新版本出来之后,也可以在controller里面验证,需要指定两个变量一个是$validate$auto里面指定的规则和model中一样。之前用把自动验证放在model里面总是有问题,先D实例化model类。

新版本出来之后,也可以在 controller里面验证,需要指定两个变量一个是 $validate $auto 里面指定的规则和 model中一样。

之前用把自动验证放在model里面总是有问题,先D实例化model类。

注意:只有先 $user->auto($auto)->validate($validate)->create()生成对象,这样才支持自动验证.

然后date数组要保留,因为像我做的这个注册,如果不用date单独从post数组中抽出来。

user->add();是不成功的,他默认是post的数据,有了date数组,应该添加的是date数组,放在controller里面一切正常上代码:

  1.  $user=D('User'); 
  2. $data['username']=$_POST['username']; 
  3. $data['password']=$_POST['password']; 
  4. $data['email']=$_POST['email']; 
  5. $validate=array
  6. array('username','require','用户名不能为空',1), 
  7. array('username','','用户名已经存在',1,'unique',1), 
  8. array('confirm_password','password','确认密码不正确',0,'confirm'), 
  9. ); 
  10. $auto=array
  11. array('password','md5',1,'function'), 
  12. array('reg_time','time',1,'function'), 
  13. ); 
  14. if($user->auto($auto)->validate($validate)->create()) 
  15.  
  16. $user->add(); 
  17. echo $user->getLastSql();exit
  18. else 
  19. $this->error($user->getError()); 

ajax验证,thinkphp中$.post方式验证用户名存在还是不存在,实例代码如下:

$.post('__URL__/checks',{'username':s,'aa':'bb'},function(data){

alert(data.data.info);

});

php代码如下:

  1. $user=D('User'); 
  2.   if($user->getByUsername($_POST['username'])) 
  3. //info 
  4.        //$this->success('已经存在用户名','1111'); 
  5.        $this->ajaxReturn(array('info'=>'cunzai','sss'=>'dddd'),"已经存在!",1);   
  6.       //这里用 success方法和 ajaxReturn有很大的区别。 ajaxReturn里面可以返回自定义设置。success方式固定返回的参数 
  7.  
  8.  } 
  9.  else  
  10.  { 
  11.   $this->error('不存在用户名'); 
  12.  
  13.  } 

推荐阅读
  • 当unique验证运到图片上传时
    2019独角兽企业重金招聘Python工程师标准model:public$imageFile;publicfunctionrules(){return[[[na ... [详细]
  • PHP 编程疑难解析与知识点汇总
    本文详细解答了 PHP 编程中的常见问题,并提供了丰富的代码示例和解决方案,帮助开发者更好地理解和应用 PHP 知识。 ... [详细]
  • 本文详细介绍了如何使用PHP检测AJAX请求,通过分析预定义服务器变量来判断请求是否来自XMLHttpRequest。此方法简单实用,适用于各种Web开发场景。 ... [详细]
  • PHP 5.2.5 安装与配置指南
    本文详细介绍了 PHP 5.2.5 的安装和配置步骤,帮助开发者解决常见的环境配置问题,特别是上传图片时遇到的错误。通过本教程,您可以顺利搭建并优化 PHP 运行环境。 ... [详细]
  • 深入理解 SQL 视图、存储过程与事务
    本文详细介绍了SQL中的视图、存储过程和事务的概念及应用。视图为用户提供了一种灵活的数据查询方式,存储过程则封装了复杂的SQL逻辑,而事务确保了数据库操作的完整性和一致性。 ... [详细]
  • 本文详细介绍了如何通过多种编程语言(如PHP、JSP)实现网站与MySQL数据库的连接,包括创建数据库、表的基本操作,以及数据的读取和写入方法。 ... [详细]
  • 在使用SQL Server进行动态SQL查询时,如果遇到LIKE语句无法正确返回预期结果的情况,通常是因为参数传递方式不当。本文将详细探讨这一问题,并提供解决方案及相关的技术背景。 ... [详细]
  • MySQL 数据库迁移指南:从本地到远程及磁盘间迁移
    本文详细介绍了如何在不同场景下进行 MySQL 数据库的迁移,包括从一个硬盘迁移到另一个硬盘、从一台计算机迁移到另一台计算机,以及解决迁移过程中可能遇到的问题。 ... [详细]
  • 本文详细介绍了中央电视台电影频道的节目预告,并通过专业工具分析了其加载方式,确保用户能够获取最准确的电视节目信息。 ... [详细]
  • 本文探讨了领域驱动设计(DDD)的核心概念、应用场景及其实现方式,详细介绍了其在企业级软件开发中的优势和挑战。通过对比事务脚本与领域模型,展示了DDD如何提升系统的可维护性和扩展性。 ... [详细]
  • 探讨了如何解决Ajax请求响应时间过长的问题。本文分析了一个从服务器获取少量数据的Ajax请求,尽管服务器已经对JSON响应进行了缓存,但实际响应时间仍然不稳定。 ... [详细]
  • 一个登陆界面
    预览截图html部分123456789101112用户登入1314邮箱名称邮箱为空15密码密码为空16登 ... [详细]
  • 本文探讨了2019年前端技术的发展趋势,包括工具化、配置化和泛前端化等方面,并提供了详细的学习路线和职业规划建议。 ... [详细]
  • 理解文档对象模型(DOM)
    本文介绍了文档对象模型(DOM)的基本概念,包括其作为HTML文档的节点树结构,以及如何通过JavaScript操作DOM来实现网页的动态交互。 ... [详细]
  • 本文深入探讨了JavaScript中实现继承的四种常见方法,包括原型链继承、构造函数继承、组合继承和寄生组合继承。对于正在学习或从事Web前端开发的技术人员来说,理解这些继承模式对于提高代码质量和维护性至关重要。 ... [详细]
author-avatar
蔚-然之林
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有