2017-02-13 58 views
-1

我試圖創建一個if else語句,但它沒有讀取語句。請如何做出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> 
+0

'isset($ _ SESSION ['Voting Status'])=='b''? 'isset()'返回一個**布爾**,它不能被評估爲一個字符串。 – BenM

+0

'isset($ _ SESSION ['x'])=='y''這是一個誤報。你需要打破這些。 –

回答

1

isset返回boolean(true/false)。

您不能將它與您目前正在使用的其他值結合使用。 isset(a) == 'b'不會像你期望的那樣工作。

您需要在isset檢查後包含比較。像這樣:

if (isset($_SESSION['Username']) and isset($_SESSION['Voting Status']) and $_SESSION['Voting Status'] == 'b'):?>