如果isset检查大于或等于

时间:2014-09-07 03:46:07

标签: php

您好我登录并注销系统时,用户登录时设置了多项内容,如下所示:

$_SESSION['logged_in'] = 1;
$_SESSION['USERNAME'] = $USERNAME;
$_SESSION['PASSWORD'] = $PASSWORD;
$_SESSION['AccessLevel'] = $AccessLevel;

所以我想做的是,当我检查用户是否已登录时,它还会检查用户是否为AccessLevel 600或更高版本并将其转发到新页面。

这就是我目前所拥有的,关于如何改变它的任何建议,以便它可以做我想要的将是伟大的。我正在考虑els if,但却无法正常工作。

<?php
    session_start();

    if(!(isset($_SESSION['USERNAME']))){
        header("location:../index.html");
    }
?>

2 个答案:

答案 0 :(得分:0)

<?php
    session_start();

    if(!(isset($_SESSION['USERNAME']))){
        echo 'Please Login';
        exit;
    }
    else {
        if ($_SESSION['AccessLevel'] >= 600) {
            echo 'Good User';
            exit;
        }
        else {
            echo 'Access Level is too low';
            exit;
        }
    }

?>

答案 1 :(得分:0)

答案很简单,希望这就是你要找的东西。为什么不直接检查访问级别,因为它是会话对象的一部分。

<?php
session_start();

// Check for access level being set in the session object as well as privilege level
if (isset($_SESSION['AccessLevel']) && $_SESSION['AccessLevel'] > 600) {
    header('location: accessible_page.html');
} else {
    header('location: not_logged_in_page.html');
}
?>