需求背景:

整个站点(除了登录入口页面外),用户成功登录后,若长时间未操作后,点击页面站点菜单,提示用户登录超时,同时跳转到登录页面。项目使用thinkphp框架,版本是3.1.3

实现:

思路:

用户在登录的时候,在session中记录用户的登录时间,在common.php文件中创建CheckAction类,继承自Action类,所有登录后的控制器均使其继承CheckAction,在CheckAction构造函数中添加检查和更新登录时间,若超时则跳转到登录页面的处理逻辑。

编码实现:

登录验证账号密码时,用户身份验证成功后记录登录时间:

function userAgreed($username, $password){$db = M('user');$condition['email'] = $username;$condition['password'] = $password;$result = $db->where($condition)->find();//dump($result);if(isset($result)){session('logintime', time());return true;}else{return false;}}

CheckAction类编码:

Class CheckAction extends Action{public function __construct(){parent::__construct();$this->checkSession();}public function checkSession(){//set out time 1 minutes$nowtime = time();$s_time = session('logintime');if(($nowtime - $s_time) > 10){session('logintime', null);$this->error('当前用户未登录或登录超时,请重新登录', '/thinkphp/index.php');}else{session('logintime', $nowtime);}}}

系统除登录页面控制器外,其他控制器均继承自CheckAction:

class MainAction extends CheckAction class OrderAction extends CheckAction

效果:

设置超时时间为10秒钟,登录成功后等待10秒,再点击页面其他菜单,页面提示登录超时,并跳转到登录页面:

php学习笔记-4.登录超时的设置相关推荐

  1. 安卓学习笔记3——登录界面UI

    安卓学习笔记3--登录界面UI 一.登录界面UI 1.根据需求写UI 2.主活动 3.主活动调用的读写文件的工具类 4.效果展示 二.总结与改进 不足: 1.密码分割采用字符串:当密码和用户名包含该字 ...

  2. python selenum学习笔记(一) 登录bilibil

    @[TOC](python selenum学习笔记(一) 登录bilibil) 利用selenum模拟浏览器操作登录bilibili 之前学习网站内容抓取的时候,一般都是get方法,获取respons ...

  3. 【若依】开源框架学习笔记 07 - 登录认证流程(Spring Security 源码)

    文章目录 一.概述 二.登录过程代码实现 三.用户验证流程(Spring Security 源码) 1.处理用户认证逻辑过滤器 `UsernamePasswordAuthenticationFilte ...

  4. 学习笔记:上网认证5 设置wifi(AP)通过FreeRadius认证

    昨天搭建好了freeradius认证环境,本次测试家里wifi通过新搭建的freeradius认证,让手机通过输入freeradius认证账号密码连接wifi 测试环境,家里d-link无线路由器(w ...

  5. 网络编程学习笔记(套接口超时)

    有三种方法给套接口上的I/O操作设置 超时: 1.调用 alarm,在到达指定时间 时产生 SIGALRM信号,可能与进程中其他已有的alarm调用 冲突 2.使用select阻塞在等待I/O上,se ...

  6. 【FacebookSDK学习笔记】登录Facebook

    SDK 提供两种方法进行身份认证,一种称之为单点登录,如果安装了的话,它使用原生的 Facebook 应用程序对话框,另一种是默认的 WebView 方法.这里介绍的是WebView的方法.Faceb ...

  7. iOS学习笔记 --微博登录 redirect_uri_mismatch 错误

    在微博登录中,出现 redirect_uri_mismatch 错误如下图: 原因是在回调地址不一致或没有设置造成的. 解决办法:登录微博开放平台,在我的应用-> 应用信息-> 高级信息中 ...

  8. 建筑建模学习笔记4——室内放置物品/设置灯光/设置材质/渲染出图

    今天记录一些问题,同时根据目前学习的过程进行一些总结. 1. 室内放置物品 室内放置物品就是从网上下载相关的家具模型,通过菜单的"导入->合并"将家具对象导入场景中,通过缩放 ...

  9. Python学习笔记——用户登录测试

    初学Python语言,做点笔记,希望能坚持下去 #!/usr/bin/env python -- coding:utf-8 - #初始化账号和密码 a=input('Please enter init ...

  10. Linux下qt注册登录,QT学习笔记:登录对话框

    效果图: 用户名或密码输入错误出现 密码和用户名正确进入主界面 1.新建工程,主窗口 2.新建对话框 3.编辑登录界面 4.编辑"退出"按钮的信号与槽入上图 5.编辑"登 ...

最新文章

  1. seci-log 1.11 发布 增加了ftpserver,远程ftp,sftp采集简化配置等功能
  2. 世博会、新三国、新红楼
  3. 苹果App Icon的问题
  4. python安装mysql数据库_windows10安装mysql-8.0.13(zip安装)~Python安装mysql
  5. android config.mk,android编译分析之10—config.mk
  6. 得到IOleInPlaceActiveObject接口,IOleInPlaceActiveObject::TranslateAccelerator(msg);
  7. PostgreSQL 数据库NULL值的默认排序行为与查询、索引定义规范 - nulls first\last, asc\desc...
  8. Doris SQL执行计划
  9. 【节能学院】油烟浓度在线监测仪在浙江省某市餐饮油烟监测治理项目中的应用
  10. 如何优雅地送妹子礼物?
  11. Coherence X for Mac 网页转换应用程序工具
  12. OPENSSH格式的private key转换成RSA格式生成pem文件
  13. python爬取美女图片_Python 爬取美女图片
  14. 自定义view————涂鸦画板
  15. 斐讯E1刷K2版老毛子Padavan,完美实现中继教程
  16. JavaScript 资源大全
  17. win10蓝屏的处理思路
  18. 商城购物设计和购物项对象设计
  19. 个人永久性免费-Excel催化剂功能第34波-提取中国身份证信息、农历日期转换相关功能...
  20. OpenCV之灰度空间变换

热门文章

  1. 软件测试工程师需要掌握哪些技能呢?
  2. 涛涛的若依学习笔记——登录
  3. 内网渗透-信息收集整合
  4. Ubuntu20.04安装五笔、拼音混合输入法
  5. 基于Spire.PDF将HTML转换为PDF
  6. 转载-公历转换农历VB示例
  7. 怎么用视频做gif动图?手把手教你制作gif表情包
  8. 一文搞懂MySQL索引所有知识点(建议收藏)
  9. 2018年腾讯校招产品群面体会
  10. Halcon的texture_laws算子自我研究