四(后台登陆密码Crypt加密和解密)

通过Crypt::encrypt(str)对str进行加密
通过Crypt::decrypt(str)对str进行解密

登录操作

思想:

  • 建立数据库模型,从数据库中读取数据然后进行匹配
    代码:
public function login()
{ 
   //如果是用post请求过来的请求则进行登录判断,否则是用get过来的请求则返回登录界面  
  if($input = Input::all())//通过Input::all()方法判断是不是post过来的数据(Input::all用来获取数据)
    { 
       $code = new \Code();
//创建第三方类对象 
       $_code = $code->get();//获取验证码 
       //首先判断验证码是否和表单传过来的验证码相等
       // echo $input['code']; 
       if(strtoupper($input['code']) != strtoupper($_code) )
        {
           session(['msg'=>'验证码错误']);

            return back();//back()用来返回上一个页面,with里面的东西是存在session中的,可以在视图中通过session得到
        } 
       else
        { 
           $user = new \App\Http\Model\User();
            $userMessage = $user->where('name',$input['user_name'])->get();//通过查询获得数据库中的数据 
           //echo $userMessage;
            //echo $userMessage[0]; 
           //echo $userMessage[0]['name'];
            $pass_p = Crypt::encrypt($input['pass_word']);//对输入的密码进行加密            //判断密码是否正确
            if(Crypt::decrypt($userMessage[0]
['password'])==Crypt::decrypt($pass_p)) 
           {
                session(['user'=>$userMessage]);//登陆成功以后存储用户信息到session中
               // echo session('user');
                echo "登入成功";
            }
            else
            { 
               session(['msg'=>'密码错误']);
                return back();//back()用来返回上一个页面,with里面的东西是存在session中的,可以在视图中通过session得到 
           } 
          // $userMessage = $user->first();
            //echo $userMessage;
        } 
   } 
   else
 {
        $user = new \App\Http\Model\User();
       //dd($user->all());
        return view('admin.login');
//调用在viewswen文件夹下的admin文件夹的login视图
    }
}

注意 从数据库返回来的数据是二维数组,要用$userMessage[0]['password']方式访问

你可能感兴趣的:(四(后台登陆密码Crypt加密和解密))