解决laravel5中auth用户登录其他页面获取不到登录信息的问题
2019-10-08 18:29
1041 查看
首先创建user表,里面有:id, name, password,remember_token等字段。
然后再Models添加表模型User.php
<?php namespace App\Models; use Illuminate\Database\Eloquent\Model; use Illuminate\Contracts\Auth\Authenticatable as AuthenticatableContract; use DB; class User extends Model implements AuthenticatableContract { protected $table = 'user'; protected $primarykey = 'id'; public $timestamps = false; protected $fillable = ['user_name', 'password', 'user_phone', 'user_email', 'user_role_id', 'user_avart', 'user_sex', 'user_age', 'user_birthday', 'last_login_ip', 'last_login_time', 'is_disabled', 'remember_token']; /** * Get the unique identifier for the user. * * @return mixed */ public function getAuthIdentifier(){ return $this->getKey(); } /** * Get the password for the user. * * @return string */ public function getAuthPassword(){ return $this->password; } /** * Get the token value for the "remember me" session. * * @return string */ public function getRememberToken() { return $this->{$this->getRememberTokenName()}; } /** * Set the token value for the "remember me" session. * * @param string $value * @return void */ public function setRememberToken($value) { $this->{$this->getRememberTokenName()} = $value; } /** * Get the column name for the "remember me" token. * * @return string */ public function getRememberTokenName() { return 'remember_token'; } }
然后需要在配置文件config/auth.php中修改如下配置:
'model' => App\Models\User::class, //指定模型 'table' => 'user', //指定用户表(user是我数据中储存用户的表)
接着在登录方法里使用Auth::login() 方法登录,如下:
public function store(Request $request) { if(empty($request->get('chkCode')) || trim($request->get('chkCode')) != trim(Session::get('admincaptcha'))){ $error->add('result','验证码不正确'); return back()->withErrors($error); } $adminUser = User::where('user_name',$request->get('user_name'))->where('user_role_id', '>', 0)->first(); if(empty($adminUser)){ $error->add('result','用户无后台权限'); return back()->withErrors($error); }else{ if (md5($request->get('user_pwd'))===$adminUser->password&&$adminUser->user_role_id){ Auth::login($adminUser); Session::put('admincaptcha', ""); return redirect()->route('admin.home'); }else{ $error->add('result','用户名或密码错误'); return back()->withErrors($error); } } }
然而虽然这个页面可以获取到登录信息,然而其他页面却没有,原来是因为id和密码我用的是user_id和user_pwd不是id和password,这两个必须不能变,改了之后可以正常登录。
以上这篇解决laravel5中auth用户登录其他页面获取不到登录信息的问题就是小编分享给大家的全部内容了,希望能给大家一个参考
您可能感兴趣的文章:
相关文章推荐
- 解决laravel5中auth用户登录其他页面获取不到登录信息
- CAS客户端.NET集成单点登录获取不到登录用户信息的问题
- Java 微信登录授权后获取微信用户信息昵称乱码问题解决
- 解决 {"ret":100030,"msg":"this api without user authorization"} android QQ第三发登录成功后获取用户信息失败的问题
- Android 微信授权登录、获取Wx用户信息,解决无法回调问题
- java 微信授权后获取微信用户信息昵称乱码问题 解决
- Android 微信登录昵称乱码问题,及获取微信用户信息
- 关于python中selenium获取不到跳转页面的当前url问题解决
- Linux下postgresql忘记密码,以其他用户登录,phpmyadmin默认不允许登录的问题解决
- smarty如何解决登录页面登录失败时在页面上同时显示失败的反馈信息的问题
- javaweb用户注销后点击浏览器返回刷新页面重复登录问题的解决方法
- asp.net用户身份验证时读不到用户信息的问题 您的登录尝试不成功。请重试。 Login控件
- 支持Android7.0 Signature V2 Scheme 多渠道打包,并解决类似360加固后获取不到渠道信息 - 渠道统计失败的问题
- 解决用户注销后点击浏览器返回刷新页面重复登录的问题
- Laravel 小程序授权用户昵称带符号获取不到授权用户信息的问题 3ff8
- 解决 微信小程序获取用户信息时弹框不显示的问题
- 使用uc_authcode 获取论坛当前登录用户信息
- Magento获取用户登录状态及登录用户信息 /页面加载 XML 文件
- [已解决]小程序获取用户信息的问题
- 前后端分离,html页面中怎么获取当前登录用户信息,并写入html页面的指定位置?