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

那么现在问题来了,如果用户一开始没有登录,而是观看了系统中的页面,在实现某一功能的时候,比如评论,这个时候就需要登录了,一般是跳到登录页面进行登录,而登录成功后又得重新来找到登录之前的界面,下面介绍一种实现登录后跳到原来界面的方法,以供参考。在跳转时,跳转到定义的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);

}

php返回原界面,thinkphp实现登录后返回原界面相关推荐

  1. thinkphp实现登录后返回原界面

    我们通常会在项目里定义一个登录控制器和登录界面用于用户的登录,可是通常我们在方法里会指定一个登录成功或失败返回的界面,通常失败返回登录界面重新登录,成功则跳到首页. 那么现在问题来了,如果用户一开始没 ...

  2. 使用python解决验证码登录并爬取登录后的个人界面:本篇以古诗文网站为例

    爬取总结记录:由于经验不足,个人尝试了很多方法,都失败了,查看了网站的上面别人的爬取经验,按照别人做的,但都没有成功. 几经波折最后终于解决了. 好了上代码: 其中有涉及到个人信息的,这里进行了模糊处 ...

  3. 【HMS Core】华为登录后返回错误码 8 、账号服务如何授权、推送服务端获取用户信息异常

    1.[HMS core][游戏登陆][问题描述] 调用华为登录后返回错误码 8 [解决方案] 错误码8的话一般在定义为内部错误(引起该错误码的原因很多),但是一般重试基本可以解决该问题(错误码).如果 ...

  4. cas服务器中如何存储用户信息,CAS3.5.2 Server登录后返回用户信息详细解决方案

    单点登录(Single Sign-On, 简称SSO)是目前比较流行的服务于企业业务整合的解决方案之一,SSO使得在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统.大家在使用时CA ...

  5. 学生信息管理系统----登录后的主界面设计

    登录成功后页面的跳转   这一部分基本是在处理JSP页面,但是也有部分需要修改的后端代码.   便于后续对JSP操作,本部分操作会新增两个JSP页面,即我们登录通过过滤器之后要访问的页面,system ...

  6. 登录界面点击登录后如何延迟提示成功的div的显示时间并跳转

    需求: 在登录页面点击sign in跳转到下个页面之前,我需要显示成功的窗口2秒然后自动关闭 那我们来研究下setTimeout: 关于这个setTimeout首先下面的代码实现的是两秒之后再显示Su ...

  7. struts2登录后返回登录前的页面

    在Action中添加 String getUrl() { return ServletActionContext.getRequest().getHeader("referer") ...

  8. mysql执行语句返回主键_mysql语句insert后返回主键

    最近开发的一个项目中,因为需要,所以需要使用mybatis中的语句返回一个主键id,语句如下, INSERT INTO F_COMPANY( company_id, company_no, compa ...

  9. 批处理使用WinRAR压缩某类型的文件,一个文件压缩成一个压缩包,压缩后名称与原文件同名,压缩后删除原文件

    @echo off setlocal enabledelayedexpansion rem winrar安装目录,我的在D盘且目录为下 cd D:\Program Files\WinRAR rem 需 ...

最新文章

  1. 大数据与智能算法(一-基础技术)-SMU在线学习笔记
  2. Linux初学(CnetOS7 Linux)之切换命令模式和图形模式的方法
  3. 从零开发一个 Java Web 项目要点
  4. Python编程专属骚技巧2
  5. Linux tty驱动程序一 架构
  6. Delphi 的绘图功能[5] - 获取 Canvas 对象
  7. Spark Dataset 入门详解
  8. Windows解除网速限制,Windows性能提升,性能优化
  9. 机器学习(一):数据预处理
  10. android学习资料整理-----高级篇
  11. Bevy 游戏引擎开发指南
  12. synctoy 远程同步_使用SyncToy 2.1同步计算机和驱动器之间的文件夹
  13. MAVEN-POM.XML配置解读
  14. MFC设置编辑框内容
  15. matlab批量导入excel表格数据,matlab导入excel表格数据-如何用matlab读取多个excel表格数据,将每个表格数......
  16. phonegap入门--4 Camera 摄像头
  17. 【0095】mongo-c-driver-1.18.0编译安装提示libmongoc-1.0.so.0.0.0:undefined reference to `BIO_meth_set_create`
  18. Android仿今日头条手界面
  19. C++:实现量化Jump-diffusion跳跃扩散过程测试实例
  20. Objective-c语言_数组练习题2:

热门文章

  1. linux远程开启不挂起的服务
  2. [Vue.js] 深入 -- 案例 - 购物车
  3. [Vue.js] 基础 -- Vue实例
  4. JavaScript JSON数据格式
  5. Tips--Multisim中压电传感器与电荷源的替代方案
  6. Ubuntu16.04安装Caffe(CPU Only)
  7. 计算机二级考vb试题,2017计算机二级考试VB练习题及答案
  8. 7-138 打印沙漏 (20 分)
  9. 卢克增加服务器,DNF卢克攻坚服务器优化:增加攻坚队频道,新跨区整合计划
  10. 链表的分解(C++)