2012-02-26 105 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循环中创建一个测试。如果匹配,则添加选择选项标签内

相关问题