ThinkPHP自动验证失败的解决方法


Posted in PHP onJune 09, 2011
/* 
* 登陆 
*/ 
public function Login(){ 
if($_POST['submit']){ 
$DB = D('Login');//自定义Model处理 
//if里面就是ThinkPHP的自动验证了. 
if(!$DB->create()){ 
$this->redirect('Index/Login', '', 3, '错误信息: '.$DB->getError().'<br/>系统将于3秒后返回重新登陆...'); 
}else{ 
$con['LoginName'] = $_POST['username']; 
$con['LoginPwd'] = md5($_POST['userpwd']); 
$list = $DB->where($con)->find(); 
if(count($list)>0){ 
echo 'ok'; 
}else{ 
$this->redirect('Index/Login', '', 3, '错误信息: 用户名或密码错误<br/>系统将于3秒后返回重新登陆...'); 
} 
} 
return ; 
} 
//这里只是将模板文件的地址封装了一下. 
A('Public')->ShowPage('login'); 
}

<?php 
class LoginModel extends Model { 
// 设置数据表 
protected $tableName = 'admin'; 
// 自动验证设置 
protected $_validate = array( 
array('username','require','用户名必须!', 1), 
array('userpwd','require','密码必须!', 1), 
); 
/* 自动填充 如果不能自动验证,将这段代码取消注释看看. 
protected $_auto = array( 
array('status','1',self::MODEL_INSERT), 
array('create_time','time',self::MODEL_INSERT,'function'), 
);*/ 
/*引用ThinkPHP2.0开发手册:ThinkPHP手册类型检查只是针对数据库级别的验证,所以系统还内置了数据对象的自动验证功能来完成模型的业务规则验证,而大多数情况下面,数据对象是由表单提交的$_POST数据创建。需要使用系统的自动验证功能,只需要在Model类里面定义$_validate属性 
*/ 
/*它这里说了,只需要在Model类里面定义$_validate属性,但是在使用ThinkPHP2.1的时候,的的确确不能通过验证,$DB->getError()无错误原因返回,且刷新的时候$DB->getError()返回"令牌表单错误" 
*/ 
} 
?>
PHP 相关文章推荐
PHP运行时强制显示出错信息的代码
Apr 20 PHP
使用PHP遍历文件目录与清除目录中文件的实现详解
Jun 24 PHP
phpmyadmin打开很慢的解决方法
Apr 21 PHP
ThinkPHP中处理表单中的注意事项
Nov 22 PHP
php数组随机排序实现方法
Jun 13 PHP
php实现可逆加密的方法
Aug 11 PHP
实例讲解PHP设计模式编程中的简单工厂模式
Feb 29 PHP
yii2 数据库读写分离配置示例
Feb 10 PHP
PHP空值检测函数与方法汇总
Nov 19 PHP
PHP通过curl获取接口URL的数据方法
May 31 PHP
php ajax confirm 删除实例详解
Mar 06 PHP
ThinkPHP5+UEditor图片上传到阿里云对象存储OSS功能示例
Aug 05 PHP
PHP下通过exec获得计算机的唯一标识[CPU,网卡 MAC地址]
Jun 09 #PHP
一个PHP缓存类代码(附详细说明)
Jun 09 #PHP
php下通过IP获取地理位置的代码(小偷程序)
Jun 09 #PHP
php 面试碰到过的问题 在此做下记录
Jun 09 #PHP
rephactor 优秀的PHP的重构工具
Jun 09 #PHP
php获取post中的json数据的实现方法
Jun 08 #PHP
常用的PHP数据库操作方法(MYSQL版)
Jun 08 #PHP
You might like
php中autoload的用法总结
2013/11/08 PHP
两种设置php载入页面时编码的方法
2014/07/29 PHP
php实现的太平洋时间和北京时间互转的自定义函数分享
2014/08/19 PHP
使用php-timeit估计php函数的执行时间
2015/09/06 PHP
用js实现随机返回数组的一个元素
2007/08/13 Javascript
jQuery html()等方法介绍
2009/11/18 Javascript
javascript入门基础之私有变量
2010/02/23 Javascript
基于Jquery的回车成tab焦点切换效果代码(Enter To Tab )
2010/11/14 Javascript
关于js内存泄露的一个好例子
2013/12/09 Javascript
javascript实现动态表头及表列的展现方法
2015/07/14 Javascript
drag-and-drop实现图片浏览器预览
2015/08/06 Javascript
jQuery实现网页顶部固定导航效果代码
2015/12/24 Javascript
Bootstrap每天必学之导航条(二)
2016/03/01 Javascript
JS清除字符串中重复值的实现方法
2016/08/03 Javascript
jQuery在ie6下无法设置select选中的解决方法详解
2016/09/20 Javascript
jQuery动态增减行的实例代码解析(推荐)
2016/12/05 Javascript
JavaScript实现焦点进入文本框内关闭输入法的核心代码
2017/09/20 Javascript
webpack vue 项目打包生成的文件,资源文件报404问题的修复方法(总结篇)
2018/01/09 Javascript
JS删除数组里的某个元素方法
2018/02/03 Javascript
vue配置font-awesome5的方法步骤
2019/01/27 Javascript
面试题:react和vue的区别分析
2019/04/08 Javascript
解决layui表格内文本超出隐藏的问题
2019/09/12 Javascript
vue-axios同时请求多个接口 等所有接口全部加载完成再处理操作
2020/11/09 Javascript
wxpython 学习笔记 第一天
2009/02/09 Python
使用Python求解最大公约数的实现方法
2015/08/20 Python
python脚本监控docker容器
2016/04/27 Python
python代码 if not x: 和 if x is not None: 和 if not x is None:使用介绍
2016/09/21 Python
[原创]windows下Anaconda的安装与配置正解(Anaconda入门教程)
2018/04/05 Python
Python3.5面向对象与继承图文实例详解
2019/04/24 Python
python 定义类时,实现内部方法的互相调用
2019/12/25 Python
python selenium自动化测试框架搭建的方法步骤
2020/06/14 Python
Python 多线程共享变量的实现示例
2020/04/17 Python
python palywright库基本使用
2021/01/21 Python
关于毕业的中学校园广播稿
2014/01/26 职场文书
归途列车观后感
2015/06/17 职场文书
jQuery实现影院选座订座效果
2021/04/13 jQuery