我们通常会在项目里定义一个登录控制器和登录界面用于用户的登录,可是通常我们在方法里会指定一个登录成功或失败返回的界面,通常失败返回登录界面重新登录,成功则跳到首页。

那么现在问题来了,如果用户一开始没有登录,而是观看了系统中的页面,在实现某一功能的时候,比如评论,这个时候就需要登录了,一般是跳到登录页面进行登录,而登录成功后又得重新来找到登录之前的界面,下面介绍一种实现登录后跳到原来界面的方法,以供参考。
在跳转时,跳转到定义的session中的地址。
先保存请求login方法界面的url
public function savelogin(){
session('returnUrl',$_SERVER['HTTP_REFERER']);
}
在登录方法最后跳转时控制
if($returnUrl = session('returnUrl')) {
session('returnUrl',null);
$this->success('登录成功',$returnUrl,0);
}else{
$this->success('登录成功',U("Home/Index/index"),0);
}
}
else if($returnUrl = session('returnUrl')){
session('returnUrl',null);
$this->error('登录失败(用户名或密码错误)',$returnUrl,0);
}
else{ $this->success('登录失败',U("Home/Login/index"),0);}
}退出时也一样
public function logout(){
$returnUrl=$_SERVER['HTTP_REFERER'];
session(null);
$this->success('退出成功',$returnUrl,1);
}另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。