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 Cookie的使用教程详解
Jun 03 PHP
深入解析Session是否必须依赖Cookie
Aug 02 PHP
php 检查电子邮件函数(自写)
Jan 16 PHP
在win7中搭建Linux+PHP 开发环境
Oct 08 PHP
phpnow php探针环境检测代码
Nov 04 PHP
使用PHP如何实现高效安全的ftp服务器(二)
Dec 30 PHP
yii2中使用Active Record模式的方法
Jan 09 PHP
PHP框架Laravel插件Pagination实现自定义分页
Apr 22 PHP
php实现跨域提交form表单的方法【2种方法】
Oct 17 PHP
php写入txt乱码的解决方法
Sep 17 PHP
在 Laravel 中动态隐藏 API 字段的方法
Oct 25 PHP
PHP7 标准库修改
Mar 09 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
PHP4.04简明安装
2006/10/09 PHP
PHP入门速成教程
2007/03/19 PHP
php 无限级 SelectTree 类
2009/05/19 PHP
PHP similar_text 字符串的相似性比较函数
2010/05/26 PHP
PHP 多维数组排序(usort,uasort)
2010/06/30 PHP
php数组函数序列之array_push() 数组尾部添加一个或多个元素(入栈),返回新长度。
2011/11/07 PHP
解析PHP中ob_start()函数的用法
2013/06/24 PHP
让textarea控件的滚动条怎是位与最下方
2007/04/20 Javascript
Javascript与flash交互通信基础教程
2008/08/07 Javascript
jquery 框架使用教程 AJAX篇
2009/10/11 Javascript
javascript管中窥豹 形参与实参浅析
2011/12/17 Javascript
关闭页面window.location事件未执行的原因及解决方法
2014/09/01 Javascript
javascript实现全角与半角字符的转换
2015/01/07 Javascript
15位和18位身份证JS校验的简单实例
2016/07/18 Javascript
nodejs对express中next函数的一些理解
2017/09/08 NodeJs
vue中for循环更改数据的实例代码(数据变化但页面数据未变)
2017/09/15 Javascript
基于JavaScript实现抽奖系统
2018/01/16 Javascript
Vue组件库发布到npm详解
2018/02/17 Javascript
webpack@v4升级踩坑(小结)
2018/10/08 Javascript
刷新页面后让控制台的js代码继续执行
2019/09/20 Javascript
JS定时器如何实现提交成功提示功能
2020/06/12 Javascript
[41:20]2014 DOTA2华西杯精英邀请赛 5 24 NewBee VS DK
2014/05/26 DOTA
[01:21]DOTA2 新英雄 森海飞霞
2020/12/18 DOTA
约瑟夫问题的Python和C++求解方法
2015/08/20 Python
python开发实例之python使用Websocket库开发简单聊天工具实例详解(python+Websocket+JS)
2020/03/18 Python
美国宠物商店:Wag.com
2016/10/25 全球购物
瑞典手机壳品牌:Richmond & Finch
2018/04/28 全球购物
网络专业学生个人的自我评价
2013/12/16 职场文书
护士思想汇报
2014/01/12 职场文书
化学教学随笔感言
2014/02/19 职场文书
2014年创先争优活动总结
2014/05/04 职场文书
比赛口号大全
2014/06/10 职场文书
2014班子成员自我剖析材料思想汇报
2014/10/01 职场文书
windows安装python超详细图文教程
2021/05/21 Python
MySQL中datetime时间字段的四舍五入操作
2021/10/05 MySQL
python中filter,map,reduce的作用
2022/06/10 Python