IF ELSE语句中的PHP逻辑OR运算符

时间:2015-04-05 07:18:35

标签: php redirect login boolean logic

我有一个用户级登录系统,我希望所有登录用户都转到主页。我想知道为什么以下逻辑不起作用。请提出更好的方法。

$role = $_SESSION['sess_userlevel'];

if( $role == 1 || $role == 2 || $role == 3 ){
        $securep = '../';
        header('Location: '.$securep);
 }else{
  //back to the login page.
}

此代码的问题在于它会重定向回登录页面。

2 个答案:

答案 0 :(得分:1)

也许你必须插入

session_start();
在访问$_SESSION数组之前

同时检查

的结果
var_dump($role)
在你的if语句之前

答案 1 :(得分:0)

$role = $_SESSION['sess_userlevel'];

if( $role == 1 || $role == 2 || $role == 3 ){
    $actual_link = "http://$_SERVER[HTTP_HOST]$_SERVER['DOCUMENT_ROOT']";
          header('location:'.$actual_link.'yourpathfile.php');
 }else{
  //back to the login page.
}