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版
Oct 09 PHP
用PHP实现读取和编写XML DOM代码
Apr 07 PHP
PHP下利用shell后台运行PHP脚本,并获取该脚本的Process ID的代码
Sep 19 PHP
php简单浏览目录内容的实现代码
Jun 07 PHP
php过滤XSS攻击的函数
Nov 12 PHP
对PHP PDO的一些认识小结
Jan 23 PHP
PHP实现的迷你漂流瓶
Jul 29 PHP
变量在 PHP7 内部的实现(二)
Dec 21 PHP
SAE实时日志接口SDK用法示例
Oct 09 PHP
Laravel给生产环境添加监听事件(SQL日志监听)
Jun 19 PHP
PHP内部实现打乱字符串顺序函数str_shuffle的方法
Feb 14 PHP
PHP cookie与session会话基本用法实例分析
Nov 18 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
PHP5中使用PDO连接数据库的方法
2010/08/01 PHP
php 获取百度的热词数据的代码
2012/02/18 PHP
PHP请求Socket接口测试实例
2016/08/12 PHP
Yii框架日志操作图文与实例详解
2019/09/09 PHP
JS判断不同分辨率调用不同的CSS样式文件实现思路及测试代码
2013/01/23 Javascript
JavaScript中setInterval的用法总结
2013/11/20 Javascript
jquery复选框全选/取消示例
2013/12/30 Javascript
jquery对元素拖动排序示例
2014/01/16 Javascript
js获取url中&quot;?&quot;后面的字串方法
2014/05/15 Javascript
在Node.js应用中读写Redis数据库的简单方法
2015/06/30 Javascript
浅谈javascript:两种注释,声明变量,定义函数
2016/10/05 Javascript
angular分页指令操作
2017/01/09 Javascript
jQuery插件FusionCharts绘制ScrollColumn2D图效果示例【附demo源码下载】
2017/03/22 jQuery
iview日期控件,双向绑定日期格式的方法
2018/03/15 Javascript
vue中倒计时组件的实例代码
2018/07/06 Javascript
基于JavaScript实现每日签到打卡轨迹功能
2018/11/29 Javascript
JavaScript寄生组合式继承原理与用法分析
2019/01/11 Javascript
vue cli安装使用less的教程详解
2019/07/12 Javascript
JS函数基本定义与用法示例
2020/01/15 Javascript
Postman参数化实现过程及原理解析
2020/08/13 Javascript
Vue实现todo应用的示例
2021/02/20 Vue.js
Python中使用gzip模块压缩文件的简单教程
2015/04/08 Python
Python中IPYTHON入门实例
2015/05/11 Python
python中使用序列的方法
2015/08/03 Python
numpy中以文本的方式存储以及读取数据方法
2018/06/04 Python
python 输入一个数n,求n个数求乘或求和的实例
2018/11/13 Python
Django中的cookie和session
2019/08/27 Python
python实现WebSocket服务端过程解析
2019/10/18 Python
python GUI库图形界面开发之PyQt5复选框控件QCheckBox详细使用方法与实例
2020/02/28 Python
HTML5中的postMessage API基本使用教程
2016/05/20 HTML / CSS
自强自立美德少年事迹材料
2014/08/16 职场文书
假释思想汇报范文
2014/10/11 职场文书
工作感想范文
2015/08/07 职场文书
2016感恩父亲节主题广播稿
2015/12/18 职场文书
防止web项目中的SQL注入
2021/12/06 MySQL
MySQL磁盘碎片整理实例演示
2022/04/03 MySQL