Javascript 限制会话用户PHP
如何禁止用户同时在两个不同的浏览器中使用同一帐户登录Javascript 限制会话用户PHP,javascript,php,Javascript,Php,如何禁止用户同时在两个不同的浏览器中使用同一帐户登录 session_start(); // set time-out period (in seconds) $inactive = 30; if( is_user_logged_in() ) { if (isset($_SESSION["timeout"])) { // calculate the session's "time to live" $sessionTTL = time() - $_SESSION["timeou
session_start();
// set time-out period (in seconds)
$inactive = 30;
if( is_user_logged_in() ) {
if (isset($_SESSION["timeout"])) {
// calculate the session's "time to live"
$sessionTTL = time() - $_SESSION["timeout"];
if ($sessionTTL > $inactive) {
session_destroy();
$redirect_to = isset($_REQUEST['redirect_to']) ? $_REQUEST['redirect_to'] : '/wordpress';
$location = str_replace('&', '&', wp_logout_url($redirect_to));;
header("Location: $location");
}
else{
wp_die('<h1>User is login! </h1>', '', array( 'back_link' => true ));
}
}
}
为此,您需要为登录日志再创建一个表,因为这些将是字段 userID islogin default=0 logintime useragent 如果用户每次登录都要更新该登录时间 若用户试图登录,那个么我们需要在用户islogin=1且logintime<会话时间时进行检查。然后死去 你需要在wordpress中这样做 所以您需要为登录函数添加代码过滤器。 并在初始化时更新登录时间
谢谢我在考虑数据库,但我几乎可以肯定,还有很多其他方法可以很简单地解决这个问题。至少,你应该尝试自己编写代码。之后,如果你有问题,你可以张贴你已经尝试了一个明确的解释什么是不工作,并提供一个解决方案。我建议你读一个好的问题和答案。另外,请确保使用并读取。只需在用户登录时设置自定义会话密钥,并在登录后将其删除即可$当前用户=wp\u获取当前用户$id=$current\u user->id;ifemptyis_user_logged_in{$sql=UPDATE preduc_users SET LoggedIn='no'其中ID=$ID;mysqli_query$connecDB,$sql;}else{$sql=UPDATE preduc_users SET LoggedIn='login'其中ID=$ID;mysqli_query$connecDB,$sql;}我这样做是为了修改表中的LoggedIn字段,但当我注销时,它不会更改任何内容