我正在尝试从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>
答案 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将始终是给定循环结构的数字,因此使用它来访问数组元素,如上所述。