如何根据用户的角色在登录后重定向用户?

时间:2015-08-08 11:38:33

标签: php session

我有两个名为Member和Admin的角色。但是,至于现在要区分会话,我只做了一个if else语句。像这样,

session_start();
$msg = "";


if (isset($_SESSION['user_id'])) {
 ###############################
} else { 
 ################################

if (isset($_POST['username'])) {
 #################################
   <?php
    if (isset($_SESSION['user_id'])) {
        if ($_SESSION['role'] == "Admin") {
            ?>
          ################################
          ################################
   <?php
        } elseif ($_SESSION['role'] == "Member") {
            ?>
          #################################
          #################################

以下哈希标志只是放入成员应该看到的内容以及管理员应该看到的内容。在插入login.php中的凭据后,包含以下代码的页面位于doLogin.php中。但是,我发现在home.php上单击以返回admin是一个麻烦,因为基本上admin的主页实际上是doLogin.php。通常会出现“确认重新提交表单”错误。

我现在要做的是,当管理员登录时,应该将其定向到一个新页面,该页面是admin.php,其中包含管理员应该看到的所有详细信息。我该怎么做?

1 个答案:

答案 0 :(得分:2)

使用header location重定向

<?php
if (isset($_SESSION['user_id'])) {
if ($_SESSION['role'] == "Admin") {

    header("Location:admin.php");
    exit;

} elseif ($_SESSION['role'] == "Member") {

    header("Location:member.php");
    exit;
}
}
?>