ThinkPHP自动验证失败及解决方法
程序员文章站
2022-05-19 12:51:08
...
/*
* 登陆
*/
public function Login(){
if($_POST[submit]){
$DB = D(Login);//自定义Model处理
//if里面就是ThinkPHP的自动验证了.
if(!$DB->create()){
$this->redirect(Index/Login, , 3, 错误信息: .$DB->getError().
系统将于3秒后返回重新登陆...);
系统将于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, 错误信息: 用户名或密码错误
系统将于3秒后返回重新登陆...);
系统将于3秒后返回重新登陆...);
}
}
return ;
}
//这里只是将模板文件的地址封装了一下.
A(Public)->ShowPage(login);
}
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()返回"令牌表单错误"
*/
}
?>
声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
相关文章
相关视频
推荐阅读
-
皮皮播放器点播时网络连接失败的原因及解决方法
-
绕过百度云管家直接下载文件及百度云盘下载失败的解决方法
-
Win7系统启动恢复界面提示无法验证amdxata.sys数字签名的原因及解决方法图文教程
-
ThinkPHP3.1新特性之动态设置自动完成及自动验证示例代码
-
huhamhire-hosts自动更新Google Hosts文件教程及故障解决方法
-
steam启动游戏失败错误代码83怎么回事?steam错误代码83的原因及解决方法
-
ThinkPHP3.1新特性之动态设置自动完成和自动验证示例
-
ThinkPHP中的create方法与自动令牌验证实例教程
-
thinkphp5.1验证码及验证码验证功能的实现详解
-
SQL Server数据库复制失败的原因及解决方法