首页 > 编程 > PHP > 正文

PHP实现会员账号只能唯一登录的代码实例

2020-03-22 20:21:21
字体:
来源:转载
供稿:网友
本篇文章给大家带来的内容是关于PHP实现会员账号只能唯一登录的代码实例,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

情景再现

同一会员账号限制在同一台设备(电脑、手机、Ipad等)上单点登录,重复登录后,原登录访问页面时则直接跳转到登录页面且需要重新登录才能正常访问。

原理分析

A账号在A电脑上登录后,A账号此时又用B电脑再次登录,则A电脑请求页面时,提示“重新登录”的信息,并跳转到登录页面

思路解析:

A账号在A电脑上登录后,把SESSION ID写入TXT文件,每次访问页面时,都做一次校验(比较txt文件的值是否和当前登录的session_id的值相同)

实例

1、入口与校验(index.php)

 ?phpsession_start();$uid = 10;if(is_login($uid)){ header( location:loginSuccess.php }else{ $getLogSessionId = file_get_contents( session_log/ .$uid. .txt if($getLogSessionId){ echo 已在其他地方登录,请重新登录 echo br  echo 5秒后跳转到登录页面!  header( refresh:5;url=login.php  }else{  echo 第一次登录...  echo br  echo 3秒钟后跳转到登录页面!  header( refresh:3;url=login.php * 通过登录时写入文件session_id和当前登录设备后生成的session_id进行比较,相同则是同一台设备登录,不同则在别的地方登录function is_login($uid){ $getLogSessionId = file_get_contents( session_log/ .$uid. .txt  if($getLogSessionId == session_id()){  return true; }else{  return false;}

2、登录(login.php)

 ?phpsession_start();echo 登录中.... echo br $uid = 10;file_put_contents( session_log/ .$uid. .txt ,session_id());echo 登录完成 

3、登录成功(loginSuccess.php)

 ?phpecho 我登录成功了! 

4、保存sessionId文件夹(session_log),测试代码,需要手动建一个或者赋予自动生成文件的权限

相关推荐:

php bootstrap实现简单登录,phpbootstrap登录

php模拟登录 php curl模拟登录教程大全

以上就是PHP实现会员账号只能唯一登录的代码实例的详细内容,PHP教程

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表