加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

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

发布时间:2020-12-14 13:58:06 所属栏目:大数据 来源:网络整理
导读:div class="codetitle" a style="CURSOR: pointer" data="69924" class="copybut" id="copybut69924" onclick="doCopy('code69924')" 代码如下: div class="codebody" id="code69924" / 登陆 / public function Login(){ if($_POST['submit']){ $DB = D('Log

<div class="codetitle"><a style="CURSOR: pointer" data="69924" class="copybut" id="copybut69924" onclick="doCopy('code69924')"> 代码如下:<div class="codebody" id="code69924">
/
登陆
/
public function Login(){
if($_POST['submit']){
$DB = D('Login');//自定义Model处理
//if里面就是ThinkPHP的自动验证了.
if(!$DB->create()){
$this->redirect('Index/Login','',3,'错误信息: '.$DB->getError().'
系统将于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秒后返回重新登陆...');
}
}
return ;
}
//这里只是将模板文件的地址封装了一下.
A('Public')->ShowPage('login');
}

<div class="codetitle"><a style="CURSOR: pointer" data="61638" class="copybut" id="copybut61638" onclick="doCopy('code61638')"> 代码如下:<div class="codebody" id="code61638">
<?php
class LoginModel extends Model {
// 设置数据表
protected $tableName = 'admin';
// 自动验证设置
protected $_validate = array(
array('username','require','用户名必须!',1),
array('userpwd','密码必须!',
);
/
自动填充 如果不能自动验证,将这段代码取消注释看看.
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()返回"令牌表单错误"
*/
}
?>

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读