Php 如何在导航栏中创建if-else语句?

Php 如何在导航栏中创建if-else语句?,php,Php,我试图创建一个if-else语句,但它没有读取该语句。请问我如何做if-else声明? 这是我的导航栏: <div id="NavBar"> <nav> <ul> <li><a href="Home.php">Home</a></li> <?php if(isset($_SESSION['User

我试图创建一个if-else语句,但它没有读取该语句。请问我如何做if-else声明? 这是我的导航栏:

<div id="NavBar">
        <nav>
        <ul>
            <li><a href="Home.php">Home</a></li>
            <?php
                if(isset($_SESSION['Username']) && isset($_SESSION['Voting Status'])=='b'):?>

                <li> <a href="Voted User.php"><?php echo $_SESSION['Username'];?></a></li>
                <li> <a href="logout.php">Logout</a></li>
                 <?php
                elseif(isset($_SESSION['Username']) && isset($_SESSION['Voting Status'])=='a'):?>

                <li> <a href="Voters Account.php"><?php echo $_SESSION['Username'];?></a></li>
                <li> <a href="logout.php">Logout</a></li>
               <?php

                else:?>

                <li><a href="Login2.php">Student Login</a></li>
                <?php
                endif;

                ?>
            <li><a href="Candidate Profile.php">Candidates Profile</a></li>
            <li><a href="Admin.php">Admin</a></li>
        </ul>
    </nav>
    </div>


isset
返回布尔值(
true
/
false

不能像当前那样将其与其他值组合<代码>设置(a)='b'将无法像您期望的那样工作

您需要在
isset
检查后包含比较。像这样:

if (isset($_SESSION['Username']) and isset($_SESSION['Voting Status']) and $_SESSION['Voting Status'] == 'b'):?>
isset($\u会话['Voting Status'])=='b'
isset()
返回一个布尔值,不能计算为字符串。
isset($\u SESSION['x'])=='y'
这是一个假阳性。你需要把它们分开。