PHP有效地防止同一用户多次登录。

PHP有效地防止同一用户多次登录。
{问题描述}:同一个用户在无法检测到的情况下多次登录是危险的。因为您无法知道是否有其他用户登录到您的帐户中。您如何禁止同一用户多次登录

{解}

(1)每个登录,在认证成功,一session_id转载。

session_regenerate_id();
session_register(用户名);
(2)一个SessionID的领域是在用户打开数据库,和现场后,session_id转载更新。

美元session_id SessionID =();
$ db =新PDO('sqlite:softtoken。DB);
为SQL =更新用户信息设置的SessionID = ' $ sessionid'where用户名=用户名和密码=美元美元的口令;;
查询= $ >准备;
$查询>执行();
(3)构建会话保存用户名

_session美元{用户名= $用户名;
(4)使用URL重写和转移session_id

$ URL =主。phpsid =session_id();
unset($分贝);
登录成功,正在跳跃!;
标题(位置:$ );
(5)在需要跳转的页面中,添加页面的开头。

main.php

< PHP
头('content-type:文本/ HTML;字符集= UTF-8);
美元美元_get SID SessionID = { };
session_id($ SessionID);
session_start();
用户名_session美元美元{ =用户名};
$ db =新PDO('sqlite:softtoken。DB);
为SQL =SELECT * FROM用户信息,用户名为$ username'and SessionID = $ SessionID;;
查询= $ >准备;
$查询>执行();
为用户查询->取= $(PDO::fetch_obj);

如果($用户>用户名{)
session_destroy();

回声window.location.href = 'index .html;;

出口();
}
>
......

上面的解决方案是PHP有效地防止同一帐户同时登录。它希望能帮助您同时解决同一帐号帐号登录问题。
免责声明:本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,并请自行核实相关内容。本站不承担此类作品侵权行为的直接责任及连带责任。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕。
相关文章
返回顶部