PHP实现自动登陆的思路分析
来源:互联网 发布:网络基础架构 编辑:程序博客网 时间:2024/04/30 01:09
经常在做网站的时候需要用到一周内免登陆,一个月内免登陆这种需求。要实现只能通过cookie来实现了。那具体的实现过程是怎样的呢?
1.首先在用户第一次登陆的时候,如果勾选了一周内免登陆,则在登陆操作完成之后,存储一个自动登录的cookie,这个cookie可以是“$value是用户的"id"加一个"随机码"组成的字符串加密处理后的数据”这个随机码是存放在数据库里的用户表里面,作为用户下次自动登陆时验证。也可以是更加高端的数据,大家尽情发挥。
//做登陆查询的伪代码//'select id from user where email = xxx and password = xxx';//查询结果为$resif($res){setcookie('autoLogin',$value,7*24*3600+time());//$value是用户的'id'加上一个'随机码'组成的字符串,然后加密处理的数据//这个随机码是存在数据库的用户表里面,作为用户下次自动登录时验证}
2.然后在下次登陆的时候在初始化的时候,先去检测用户电脑里是否有$_COOKIE['autoLogin']的数据,如果有,则对数据今昔解密之后分析,查看是否是之前登陆存储的真是cookie(以防伪造)
if(!empty($_COOKIE['autoLogin'])){$userInfo = jiemi($_COOKIE['autoLogin']);//假设解密完毕得到的是一个数组$userInfo['code'] = xxx;$userInfo['id'] = xxx;//然后拿这个信息去数据库里查询,如果能查到那么就登录成功//查询伪代码//select id from user where id = $userInfo['id'] and code = $userInfo['code']//$res是查询的结果if($res){//重新处理cookie和session}}
转自:http://jingyan.baidu.com/article/20b68a8853a410796cec62ba.html
0 0
- PHP实现自动登陆的思路分析
- PHP实现自动登陆的思路分析
- PHP SESSION之自动登陆的实现
- 网页注册和登陆简单实现的思路分析
- php如何设置cookie实现自动登陆?
- PHP实现一周内自动登陆
- 最简单的单点登陆SSO系统的实现思路
- Android 自带浏览器谷歌账号自动登录的实现 -- 无法登陆原因分析
- PHP异位或加密实现自动登陆
- Ubuntu Edgy自动登陆的一种实现
- Cubieboard2 lubuntu 实现用户的自动登陆
- 基于c#实现网站的自动登陆
- 用sshpass实现ssh的自动登陆
- 用sshpass实现ssh的自动登陆
- PHP Dispath的实现思路及代码
- PHP购物车实现的思路
- expect实现自动登陆
- Cookie实现自动登陆
- HDU2131 Probability【水题】
- Java 加密框架 02 Base64
- 【opencv学习笔记】(1)openCV 2.410 vs2013环境配置
- 整理了Ubuntu的关机重启命令知识,以作备忘。
- Mongodb安装及使用
- PHP实现自动登陆的思路分析
- Java对象深度克隆
- VMware下centos samba配置
- /*始*/
- 听の音
- 心理学大概扫一眼
- 闲谈-2015年1月6日
- JAVA基础自学手册
- 《冰与火之歌》七王国的骑士