2015-11-09 31 views
-1

我在<table>有這個特定的代碼。 Select Option只顯示顯示細節和其他選項,在第一行而不是其他選項。選擇選項無法顯示在其他行

從圖像中,保存在數據庫中的數據僅出現在行1 Select Option上,但不在另一行上。

enter image description here

代碼是在這裏:

<table class="table table-striped table-hover "> 
      <thead> 
       <tr> 
        <th>Staff Name</th> 
        <th>Current Role</th> 
        <th>Select Role</th> 
       </tr> 
      </thead> 
      <?php 
      while ($row = mysqli_fetch_assoc($successStaffQuery)) { 
       $staffId = $row['staff_id']; 
       $staffName = $row['staff_name']; 
       $staffRole = $row['role_type']; 
      ?> 
       <tr> 
        <td><?php echo $staffName; ?></td> 
        <td><?php echo $staffRole; ?></td> 
        <td> 
         <div class="form-group"> 
          <form action="doChangeRole.php" method="post" name="register"> 
           <input type="hidden" name="getStaffId" value="<?php echo $staffId ?>" > 
           <div class="form-group"> 
           <select class="form-control" onchange="this.form.submit()" id="select" name="roleChange"> 
            <?php 
             while ($role = mysqli_fetch_array($successRoleQuery)) { 
             if ($row['role_id'] = $role['role_id']) { 
              ?> 
              <option value="<?php echo $role['role_id']; echo 'selected'; ?>"><?php echo $role['role_type']; ?></option> 
            <?php 
            } 
             } 
           ?> 
           </select> 
         </div> 
         <noscript><input type="submit" value="Submit"></noscript> 
          </form> 
        </div> 
        </td> 
       </tr> 
         <?php 
        } 
        ?> 
    </table> 

根據我的理解,該數據應顯示出來,但是在這種情況下,select option剛剛停止運行後,成功地在第一個顯示的選項行。任何人都可以幫忙

+0

那是因爲你只是添加一個選項,您的選擇框。 –

回答

0

很多代碼中的錯誤的:

  1. 你只添加的選項,如果行ROLE_ID = ROLE_ID爲$角色
  2. 你不比較,您分配$角色[「ROLE_ID」]到$ row ['role_id]
  3. 您將選定的標籤輸出到您的價值標籤?

更改選項的代碼如下(刪除錯的,如果標籤

//loop your success query 
while ($role = mysqli_fetch_array($successRoleQuery)) { 
    //output the options 
    //add selected tag only to one option 
    echo 
     '<option value="'.$role['role_id'].'"'.($role['role_id'] == $row['role_id'] ? ' selected': '').'>' 
      .$role['role_type'] 
     .'</option>'; 
}; 

代碼沒有測試!

+0

試過你的代碼,但仍與我在圖片中顯示的結果相同。 – eddie

相關問題