在下拉列表中显示mysql记录的值

时间:2014-01-05 19:22:16

标签: php mysql

我正在尝试从mysql Db获取值,并在网页的下拉列表中显示值,并在下拉列表中选择正确的值。该值是1-10的整数。

我已经尝试了下面的基本功能但运气很大,因为选项值表示每个条目的数组并且没有显示选定的选项。请帮助。

<select name="Sleeps">
<?php
 $sleeps = $row['Sleeps'];

 $selectedId = array(1, 2, 3);
 $selection = array(
        1 => "1",
        2 => "2",
        3 => "3" );

 foreach($selection as $value){
    $text = $value;
    $selected = '';
    if ($selectedID == $sleeps) {
        $selected = 'selected';
    }
    echo '<option value="'.$selectedId.'" selected="'.$selected.'">'.$text.'</option>';
 }
?>
</select>

2 个答案:

答案 0 :(得分:0)

你在说

<option value="'.$selectedId.'" ...>

所以你给新选项一个数组的值。我猜是有问题的。尝试用

替换它
<option value="'.$test.'" ...>

答案 1 :(得分:0)

它正在完全按照你所说的去做。 selectedId没有以任何方式迭代,你只是回显出转换为字符串的原始值。

您需要一种方法来访问$ selectedId数组中的每个元素。

我们假设数组中的值总是1,2,3,n

foreach($ selection as $ value){     $ text = $ value;     $ selected ='';     if($ selectedID == $ sleeps){         $ selected ='selected';     }     echo''。$ text。'';  }

您需要实际访问数组的索引。由于$ value将始终是给定循环结构的数字,因此使用它来访问数组元素,如上所述。