ThinkPHP自動(dòng)驗(yàn)證失敗的解決方法
更新時(shí)間:2011年06月09日 22:14:59 作者:
引用ThinkPHP2.0開發(fā)手冊(cè):ThinkPHP手冊(cè)類型檢查只是針對(duì)數(shù)據(jù)庫級(jí)別的驗(yàn)證,所以系統(tǒng)還內(nèi)置了數(shù)據(jù)對(duì)象的自動(dòng)驗(yàn)證功能來完成模型的業(yè)務(wù)規(guī)則驗(yàn)證,而大多數(shù)情況下面,數(shù)據(jù)對(duì)象是由表單提交的$_POST數(shù)據(jù)創(chuàng)建。
復(fù)制代碼 代碼如下:
/*
* 登陸
*/
public function Login(){
if($_POST['submit']){
$DB = D('Login');//自定義Model處理
//if里面就是ThinkPHP的自動(dòng)驗(yàn)證了.
if(!$DB->create()){
$this->redirect('Index/Login', '', 3, '錯(cuò)誤信息: '.$DB->getError().'<br/>系統(tǒng)將于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, '錯(cuò)誤信息: 用戶名或密碼錯(cuò)誤<br/>系統(tǒng)將于3秒后返回重新登陸...');
}
}
return ;
}
//這里只是將模板文件的地址封裝了一下.
A('Public')->ShowPage('login');
}
復(fù)制代碼 代碼如下:
<?php
class LoginModel extends Model {
// 設(shè)置數(shù)據(jù)表
protected $tableName = 'admin';
// 自動(dòng)驗(yàn)證設(shè)置
protected $_validate = array(
array('username','require','用戶名必須!', 1),
array('userpwd','require','密碼必須!', 1),
);
/* 自動(dòng)填充 如果不能自動(dòng)驗(yàn)證,將這段代碼取消注釋看看.
protected $_auto = array(
array('status','1',self::MODEL_INSERT),
array('create_time','time',self::MODEL_INSERT,'function'),
);*/
/*引用ThinkPHP2.0開發(fā)手冊(cè):ThinkPHP手冊(cè)類型檢查只是針對(duì)數(shù)據(jù)庫級(jí)別的驗(yàn)證,所以系統(tǒng)還內(nèi)置了數(shù)據(jù)對(duì)象的自動(dòng)驗(yàn)證功能來完成模型的業(yè)務(wù)規(guī)則驗(yàn)證,而大多數(shù)情況下面,數(shù)據(jù)對(duì)象是由表單提交的$_POST數(shù)據(jù)創(chuàng)建。需要使用系統(tǒng)的自動(dòng)驗(yàn)證功能,只需要在Model類里面定義$_validate屬性
*/
/*它這里說了,只需要在Model類里面定義$_validate屬性,但是在使用ThinkPHP2.1的時(shí)候,的的確確不能通過驗(yàn)證,$DB->getError()無錯(cuò)誤原因返回,且刷新的時(shí)候$DB->getError()返回"令牌表單錯(cuò)誤"
*/
}
?>
您可能感興趣的文章:
- thinkPHP自動(dòng)驗(yàn)證、自動(dòng)添加及表單錯(cuò)誤問題分析
- Thinkphp實(shí)現(xiàn)自動(dòng)驗(yàn)證和自動(dòng)完成
- thinkPHP實(shí)現(xiàn)表單自動(dòng)驗(yàn)證
- ThinkPHP 表單自動(dòng)驗(yàn)證運(yùn)用示例
- ThinkPHP表單自動(dòng)驗(yàn)證實(shí)例
- ThinkPHP3.1新特性之動(dòng)態(tài)設(shè)置自動(dòng)完成及自動(dòng)驗(yàn)證示例代碼
- ThinkPHP3.1新特性之動(dòng)態(tài)設(shè)置自動(dòng)完成和自動(dòng)驗(yàn)證示例
- ThinkPHP中的create方法與自動(dòng)令牌驗(yàn)證實(shí)例教程
- ThinkPHP表單自動(dòng)提交驗(yàn)證實(shí)例教程
- thinkPHP自動(dòng)驗(yàn)證機(jī)制詳解
相關(guān)文章
PHP GD庫相關(guān)圖像生成和處理函數(shù)小結(jié)
這篇文章主要介紹了PHP GD庫相關(guān)圖像生成和處理函數(shù),分類總結(jié)并分析了php GD庫相關(guān)圖像處理函數(shù)的功能與用法,需要的朋友可以參考下2016-09-09
PHP在線調(diào)試執(zhí)行的實(shí)現(xiàn)方法(附demo源碼)
這篇文章主要介紹了PHP在線調(diào)試執(zhí)行的實(shí)現(xiàn)方法,實(shí)例分析了PHP實(shí)現(xiàn)在線調(diào)試運(yùn)行的原理,步驟與具體實(shí)現(xiàn)代碼,并附帶demo源碼供讀者下載參考,需要的朋友可以參考下2016-04-04
利用Dockerfile文件部署php項(xiàng)目的全過程
環(huán)境部署一直是一個(gè)很大的問題,無論是開發(fā)環(huán)境還是生產(chǎn)環(huán)境,但是Docker將開發(fā)環(huán)境和生產(chǎn)環(huán)境以輕量級(jí)方式打包,提供了一致的環(huán)境,下面這篇文章主要給大家介紹了關(guān)于利用Dockerfile文件部署php項(xiàng)目的相關(guān)資料,需要的朋友可以參考下2022-07-07
PHP類的聲明與實(shí)例化及構(gòu)造方法與析構(gòu)方法詳解
這篇文章主要介紹了PHP類的聲明與實(shí)例化及構(gòu)造方法與析構(gòu)方法,結(jié)合實(shí)例形式分析了PHP面向?qū)ο箢惖穆暶髋c使用相關(guān)技巧,需要的朋友可以參考下
2016-01-01 
