如何防止用户在登录后访问登录页面?

问题描述 投票:2回答:4

我希望阻止用户在登录时访问登录页面。在标题页面中,我检查了会话,以便用户无法登录而无法访问任何管理页面。我必须在标题页和会话页面中编写什么代码在登录时阻止用户访问登录页面?

这是我的会话课程

public static function init(){
    session_start();
}
public static function set($key, $val){
    $_SESSION[$key]=$val;
}
public static function get($key){
    if (isset($_SESSION[$key])) {
        return $_SESSION[$key];
    } else {
        return false;
    }
}
public static function checkSession(){
    self::init();
    if (self::get("login")==false) {
        self::destroy();
        header("Location:login.php");
    }  
}

public static function destroy(){
    session_destroy();
php session login logout
4个回答
2
投票

此代码可以避免用户在注销后返回页面

if(!isset($_SESSION['login_user'])){
  header("location:login.php");
  location.reload();
 }

此代码是为了避免用户重复登录

if(isset($_SESSION['login_account_id'])){
      header('location: /index.php');
  }

1
投票

检查登录页面上的会话变量值(如果存在),然后重定向或仪表板或主页(如果在登录页面上不存在会话变量值重定向)。


1
投票

像这样写你的登录页面:

<?php
   session_start();
   if(isset($_SESSION['key'])){
      header('home.php');
   } else {
      //Paste login page code here
   }
?>

0
投票
<?php
// Initialize the session
session_start();

// If user is already logged in, redirect to index
if($_SESSION["loggedin"] == true){
    header("location: index.php");
}

?>
© www.soinside.com 2019 - 2024. All rights reserved.