我有四个下拉框,显示来自数据库的信息,但它只显示四个中的两个。 http://www.cupboard2stomach.com/php/get.php?dropdown1=bread&dropdown3=chicken&Submit=Submit这就是它目前的样子。
我的代码有问题吗?
Ingredient 1:<select name= "dropdown1" id = "drop1"/>
<?php
while ($line = mysql_fetch_array($result1, MYSQL_ASSOC)) {
?>
<option value="<?php echo $line['ingredientname'];?>"> <?php echo $line['ingredientname'];?> </option>
<?php
}
?>
Ingredient 2:<select name = "dropdown2" id = "drop2"/>
<?php
while ($line = mysql_fetch_array($result2, MYSQL_ASSOC)) {
?>
<option value="<?php echo $line['ingredientname'];?>"> <?php echo $line['ingredientname'];?> </option>
<?php
}
?>
Ingredient 3:<select name = "dropdown3" id = "drop3"/>
<?php
while ($line = mysql_fetch_array($result3, MYSQL_ASSOC)) {
?>
<option value="<?php echo $line['ingredientname'];?>"> <?php echo $line['ingredientname'];?> </option>
<?php
}
?>
Ingredient 4:<select name = "dropdown4" id = "drop4"/>
<?php
while ($line = mysql_fetch_array($result4, MYSQL_ASSOC)) {
?>
<option value="<?php echo $line['ingredientname'];?>"> <?php echo $line['ingredientname'];?> </option>
<?php
}
?>
答案 0 :(得分:3)
您正在尝试为选择元素(<select />
)使用XML样式自动关闭标记语法,这是错误的,浏览器将忽略/
来执行错误恢复。
因此,所有选择元素中都缺少结束标记(</select>
)。所以你试图将你的子序列选择元素放在第一个元素中。
即使您可以在任意元素上使用自动关闭标记语法,选项元素也必须是它们所属的select元素的后代!
validator会为你选择这个。
答案 1 :(得分:2)
这是因为您没有关闭select
框
例如,更改为:
Ingredient 1:<select name= "dropdown1" id = "drop1"/>
<?php
while ($line = mysql_fetch_array($result1, MYSQL_ASSOC)) {
?>
<option value="<?php echo $line['ingredientname'];?>"> <?php echo $line['ingredientname'];?> </option>
<?php
}
?>
</select>
答案 2 :(得分:1)
关闭您的选择标记
Ingredient 1:<select name= "dropdown1" id = "drop1"/>
<?php
while ($line = mysql_fetch_array($result1, MYSQL_ASSOC)) {
?>
<option value="<?php echo $line['ingredientname'];?>"> <?php echo $line['ingredientname'];?> </option>
<?php
}
?>
</select>
Ingredient 2:<select name = "dropdown2" id = "drop2"/>
<?php
while ($line = mysql_fetch_array($result2, MYSQL_ASSOC)) {
?>
<option value="<?php echo $line['ingredientname'];?>"> <?php echo $line['ingredientname'];?> </option>
<?php
}
?>
</select>
答案 3 :(得分:0)
因为选择它以/&gt;结尾;它应以&gt;
结尾w3c验证器提供错误
self-closing syntax (/>) used on a non-void HTML element. Ignoring the slash and treating as a start tag.
下次您应该使用http://validator.w3.org/检查您的代码。