2012-02-26 77 views
1

我有一個從mysql表中填充的下拉框。從PHP中的變量中選擇下拉選項

當查看該框時,選項的順序與表中的相同,例如, a,b,c,d

我有一個變量,並希望將下拉框預設爲該變量。

例如,如果變量是C,下拉框就自動C中選擇。用戶可以隨時更改它,如果他們想。

這是下拉框的代碼。

  <select name ='action'> 
       <?php 

        $query = "SELECT action FROM actions"; 

        $result = mysql_query($query); 

        while($myrow = mysql_fetch_array($result)) { 
         $action = $myrow['action']; 
         echo "<option value='$action'>$action</option>\n"; 
        }  
       ?> 
      </select> 

我曾嘗試加入這一行上述查詢....

echo "<option value='$variable'>$variable</option>\n"; 

......然而,這只是增加了變量作爲一個選項列表的頂部。例如列表a,b,c,d,當我將變量設置爲B添加上面的行時,下拉列表顯示b,a,b,c,d。

任何人都可以告訴我如何正確預設顯示的選項?謝謝

回答

2

試試這個代碼:

 <select name ='action'> 
      <?php 
       $default = 'default_value'; 
       $query = "SELECT action FROM actions"; 

       $result = mysql_query($query); 

       while($myrow = mysql_fetch_array($result)) { 
        $action = $myrow['action']; 
        echo "<option value='$action'".($action == $default ? ' selected="selected"' : '').">$action</option>\n"; 
       }  
      ?> 
     </select> 

您最初設置你想要預設的默認值。然後檢查每一行迭代操作是否爲默認值。

+0

非常好!完美的作品。感謝幫助:) – user1233852 2012-02-26 13:56:59

0

在while循環中創建一個測試。如果匹配,則添加選擇選項標籤內