您的位置:首页 > 编程语言 > PHP开发

laravel 返回登陆前浏览的页面实现(登录重构后的登录跳转)

2018-02-23 18:07 781 查看
场景:
    用户浏览网站并登录后,喜欢返回到登陆前的网页
解决:
      其实各个框架都可以这样实现, 通过Session
     原理:  通过session记录当前账户浏览的uri , 在自定义的页面跳转过去就ok了
     1. 在公用模板中做下面的操作
{{-- 登录返回之前浏览的页面,这里的逻辑自定义就好 --}}
@if (!\Auth::check() && strpos(\Request::getRequestUri(), 'discussions')!==false)
{!! \Session::put('redirect_url', \Request::getRequestUri()) !!}
@endif      2. 在定义的登录处做下面的操作
public function sign(UserLoginRequest $request)
{
$attempt = [
'email' => $request->get('email'),
'password' => $request->get('password'),
'is_confirmed' => 1
];
if (\Auth::attempt($attempt)) {
// 跳转到登陆之前的页面
if (\Session::has('redirect_url')) {
$redirect_url = \Session::get('redirect_url');
\Session::forget('redirect_url');
return redirect($redirect_url);
}
return redirect('/');
}

\Session::flash('user_login_failed', '密码不正确或者邮箱没有验证');
return redirect('/login')->withInput();
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐