本文实例讲述了PHP判断当前用户已在别处登录的方法。分享给大家供大家参考。具体分析如下:
主要思路如下: 1.登录时,将用户的SessionID记录下来 2.验证登录时,将记录的该用户SessionID与当前SessionID匹配 3.如果不相同,说明在别处登录
首先,进入http://localhost/login_single/index.php可查看登录状态。 index.php页面代码如下:
代码如下:
PHP
//开启Session
session_start();
header("Content-type: text/html; charset=utf-8");
//取Session中的用户信息 $username=$_SESSION['username'];
//判断是否有效 if(!isset($username)){ echo "您未登录!登录"; exit(); }
//登录时保存的该用户SessionID $sessin_id=file_get_contents('session_id/'.$username);
//如果当前的SessionID与之前记录的SessionID不匹配 //说明已在别处登录 if(session_id() != $sessin_id){ //注销当前用户 unset($_SESSION['username']); echo "您已在别处登录!从新登录"; exit(); }else{ echo "欢迎您:".$username; echo " 注销"; }
echo "
";对于未登录的用户则提示跳转到 http://localhost/login_single/login.html登录页面,login.html页面代码如下:
代码如下: