我有一个问题,我想显示从数据库到动态onchange选择表单的所有行,但它只显示第一行或仅显示最后一行。你能帮我一个人吗?
这是我的代码:
<?php
$selected11 = '';
function get_options11($vyber11) {
$queryyy = mysql_query("SELECT funkcia, ID_funk FROM funkcie");
while($row = mysql_fetch_array($queryyy)) {
$v11=$row['ID_funk'];
$k11=$row['funkcia'];
$moznosti11 = '';
if($vyber11==$v11){
$moznosti11.='<option value="'.$v11.'" selected>'.$k11.'</option>';
} else{
$moznosti11.='<option value="'.$v11.'">'.$k11.'</option>';}
}
return $moznosti11;
}
if(isset($_POST['funkcia'])) {
$selected11 = $_POST['funkcia'];
}
}
?>
<select name="funkcia" class="ramceky" style="width: 150px; height: 40px" onchange="this.form.submit();">
<option><?php echo get_options11($selected11); ?></option>
</select>
答案 0 :(得分:0)
问题是你带着选项返回一个<option>
。
改变这个:
<option><?php echo get_options11($selected11); ?></option>
到此:
<?php echo get_options11($selected11); ?>
答案 1 :(得分:0)
您在每个循环中分配变量$moznosti11;
。
在循环之前移动它,它应该像魅力一样。
见这里:
$moznosti11 = '';
while($row = mysql_fetch_array($queryyy)) {
$v11=$row['ID_funk'];
$k11=$row['funkcia'];
if($vyber11==$v11){
$moznosti11.='<option value="'.$v11.'" selected>'.$k11.'</option>';
} else{
$moznosti11.='<option value="'.$v11.'">'.$k11.'</option>';}
}
return $moznosti11;
}