PHP判断用户是否已经登录(跳转到不同页面或者执行不同动作)


Posted in PHP onSeptember 22, 2016

1.

PHP判断用户是否已经登录(跳转到不同页面或者执行不同动作)

2.

<if condition="$GLOBALS['userinfo']['user_id'] gt 0">
<span class="help_wz"><a href="{$Think.config.VIP_URL}/Member/user_pwd/" style="color:#404958;">找回登录密码</a></span>
<else/>
<span class="help_wz"><a href="/Login/FindPwd" style="color:#404958;">找回登录密码</a></span>
</if>

3.后台设置全局变量并查询用户信息

public function UserInfo($user_id){
//查询系统信息
$system=array(
'CmdId'=>'System',
'Token'=>'wap',
'PostDetails'=>json_encode(array(
)));
//通过curl的post方式发送接口请求
$curl=new CurlController();
$strs=$curl->SendCurl($system);
$GLOBALS['system']=$strs['AcctDetails'];
if(empty($user_id)){
return false;
}
setcookie("login_uid", $user_id, time() + 3600, "/", C('cookie_url'));
setcookie("rdun", $this->authcode($user_id . "," . time(), "ENCODE"), time() + 3600,"/",C('cookie_url'));;
$data=array(
'CmdId'=>'Individual',
'Token'=>session('token'),
'PostDetails'=>json_encode(array(
'user_id'=>$user_id,
)));
//通过curl的post方式发送接口请求
$curl=new CurlController();
$str=$curl->SendCurl($data);
$GLOBALS['userinfo']=$str['AcctDetails'];
$newtoken=unserialize($str['AcctDetails']['token']);
$oldtoken=unserialize(session('token'));
if(!empty(session('token')) && !empty($str['AcctDetails']['token'])){
//用户不对
if($newtoken['user_id'] !== $newtoken['user_id']){
session('token',null);
session('user_id',null);
header('Location:/Login/Login');
return false;
}
//token不对
if($newtoken['time'] !== $oldtoken['time']){
session('token',null);
session('user_id',null);
header('Location:/Login/Login');
return false;
}
//超时的不能在这做,原因是存入session的值不变,如果用户一直操作的话,而且只登陆一次,那么就会出现问题
}
return true;
}

以上所述是小编给大家介绍的PHP判断用户是否已经登录(跳转到不同页面或者执行不同动作),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

PHP 相关文章推荐
一个很方便的 XML 类!!原创的噢
Oct 09 PHP
学习discuz php 引入文件的方法DISCUZ_ROOT
Jun 21 PHP
用Zend Studio+PHPnow+Zend Debugger搭建PHP服务器调试环境步骤
Jan 19 PHP
php实例分享之html转为rtf格式
Jun 02 PHP
PHP获取服务器端信息的方法
Nov 28 PHP
ThinkPHP入口文件设置及相关注意事项分析
Dec 05 PHP
四个PHP非常实用的功能
Sep 29 PHP
PHP翻页跳转功能实现方法
Nov 30 PHP
php微信开发接入
Aug 27 PHP
PHP+AJAX 投票器功能
Nov 11 PHP
PHP设计模式(九)外观模式Facade实例详解【结构型】
May 02 PHP
PHP执行普通shell命令流程解析
Aug 24 PHP
PHP查看SSL证书信息的方法
Sep 22 #PHP
php版微信自动获取收货地址api用法示例
Sep 22 #PHP
php版微信公众平台回复中文出现乱码问题的解决方法
Sep 22 #PHP
php中foreach结合curl实现多线程的方法分析
Sep 22 #PHP
PHP实现上一篇下一篇的方法实例总结
Sep 22 #PHP
php微信公众平台配置接口开发程序
Sep 22 #PHP
PHP使用星号隐藏用户名,手机和邮箱的实现方法
Sep 22 #PHP
You might like
ecshop 订单确认中显示省市地址信息的方法
2010/03/15 PHP
PHP-redis中文文档介绍
2013/02/07 PHP
PHP中使用TCPDF生成PDF文档实例
2014/07/01 PHP
PHP实现的字符串匹配算法示例【sunday算法】
2017/12/19 PHP
快速保存网页中所有图片的方法
2006/06/23 Javascript
Z-Blog中用到的js代码
2007/03/15 Javascript
计算世界完全对称日的js代码,粗糙版
2011/11/04 Javascript
js获取客户端外网ip的简单实例
2013/11/21 Javascript
单击某一段文字改写文本颜色
2014/06/06 Javascript
JavaScript中用toString()方法返回时间为字符串
2015/06/12 Javascript
JavaScript中的Math.atan2()方法使用详解
2015/06/15 Javascript
js基础之DOM中document对象的常用属性方法详解
2016/10/28 Javascript
详解js的事件处理函数和动态创建html标记方法
2016/12/16 Javascript
JS实现HTML标签转义及反转义
2020/04/14 Javascript
PHP实现本地图片上传和验证功能
2017/02/27 Javascript
vue双向绑定简要分析
2017/03/23 Javascript
使用ajax的post同步执行(实现方法)
2017/12/21 Javascript
学习LayUI时自研的表单参数校验框架案例分析
2019/07/29 Javascript
[52:07]完美世界DOTA2联赛PWL S3 LBZS vs access 第二场 12.10
2020/12/13 DOTA
python海龟绘图实例教程
2014/07/24 Python
详解在Python程序中解析并修改XML内容的方法
2015/11/16 Python
python实现微信跳一跳辅助工具步骤详解
2018/01/04 Python
详解Python正则表达式re模块
2019/03/19 Python
Pandas库之DataFrame使用的学习笔记
2019/06/21 Python
Python通过类的组合模拟街道红绿灯
2020/09/16 Python
css sprite简单实例
2016/05/23 HTML / CSS
美国最便宜的旅游网站:CheapTickets
2017/07/09 全球购物
意大利领先的线上奢侈品销售电商:Eleonora Bonucci
2017/10/17 全球购物
美术教学感言
2014/02/22 职场文书
党员教师四风问题整改措施思想汇报
2014/10/08 职场文书
给老婆道歉的话
2015/01/20 职场文书
招商银行收入证明
2015/06/17 职场文书
2015教师个人年度工作总结
2015/10/23 职场文书
2017大学生寒假社会实践心得体会
2016/01/14 职场文书
python playwright 自动等待和断言详解
2021/11/27 Python
mysql 索引的数据结构为什么要采用B+树
2022/04/26 MySQL