Php 我有两种类型的用户-用户和管理员。我想包括一个会话检查,以检查这个人是否以用户或管理员身份登录。

Php 我有两种类型的用户-用户和管理员。我想包括一个会话检查,以检查这个人是否以用户或管理员身份登录。,php,session,admin,Php,Session,Admin,这是我包含的代码: <?php session_start(); if(!isset($_SESSION['userid']) OR $_SESSION['userid']==''){ header('Location: Loginhome.php'); } elseif(isset($_SESSION['user_type']) && $_SESSION['user_type'] =='Admin'){ header('Location: adminh

这是我包含的代码:

<?php
session_start();
if(!isset($_SESSION['userid']) OR $_SESSION['userid']==''){

   header('Location: Loginhome.php');

}
elseif(isset($_SESSION['user_type']) && $_SESSION['user_type'] =='Admin'){
     header('Location: adminhome.php');

}
else{
     header('Location: userhome.php');
   exit;
}

?>


这段代码表示登录后页面没有正确重定向

你需要像这样做

你需要帮助这个

声明角色

//对于管理员

如果($_会话['user']['role']==1){

//您的代码在这里

}

//适用于所有用户

如果($_会话['user']['role']==2&&$_会话['user']['name']=$username){

//你的代码在这里

}

祝大家好运




请在此处添加userhome.php的内容。将用户类型存储在数据库中,并在登录时设置
$\u会话['user\u type']
就这样。adminhome.php中是否也包含此位?如果是这样的话,我就知道重定向问题可能是什么了。但是如果没有,你如何在没有先登录的情况下通过键入adminhome.php的url来处理人们呢?@hardik_kothiya请正确设置你的代码格式以给出正确的答案。请在回答中添加一些解释当OP使用
$\u会话['user\u type']
时,在你的代码中使用
$\u会话['user\u type']
有什么好的理由吗?
 <?php
 session_start();
 if(!isset($_SESSION['user_type']=='1']) OR $_SESSION['userid']==''){

    header('Location: Loginhome.php');

  }
 else
if(isset($_SESSION['user_type']=='2']) && $_SESSION['user_type'] =='Admin'){
     header('Location: adminhome.php');

 }
 else{
   header('Location: userhome.php');
   exit;
   }

 ?>
<?php

session_start();

if ($_SESSION['role'] !== 'admin') {
  header('Location: ../index');