thinkphp5登录验证的几种情况

首先获取到输入的name值  $admin=Admin::getByName($data['name']);再进行对password的判断

password的情况有三种,密码正确,不正确,为输入

先获取用户用输入的值,使用动态查询某值:$admin=Admin::getByName($data['name']);

if($admin){
  if($admin['password']==md5($data['password'])){
    session('id',$admin['id']);
    session('name',$admin['name']);
 $this->error('登录成功',url('index/index'));//密码正确的情况
  }else{
  $this->error('密码错误');//密码错误的情况
  }
}else{
  $this->error('用户不存在');//用户不存在的情况
}

密码验证的成功后,还有用户直接输入后台地址进入后台这种恶意行为,需防范

首先不能直接进入后台,为提高效率,在公共控制器中添加,再在其他控制器中引入

使用模型初始化方法_initialize(),

public function _initialize(){
  if(!session('id') || !session('name')){
  $this->error('您尚未登录系统',url('login/index'));
}

 

posted @ 2018-03-05 12:04  潘潘潘的博客  阅读(2599)  评论(0编辑  收藏  举报