如何在PHP MySQL下拉列表中设置选定项
我有一个表如何在PHP MySQL下拉列表中设置选定项,php,mysql,drop-down-menu,Php,Mysql,Drop Down Menu,我有一个表bus,其中列bus\u id,bus\u no 我尝试了多选回显,我尝试了下面的代码,但它重复了总线号 请帮助我回显所有总线,并回显所选总线旁边的所选 <form name="editstudent" method="get" action="testmulti.php"> <select name="numBus[]" multiple> <?php $selBus=mysql_query("SELECT * FROM najdsy_bus orde
bus
,其中列bus\u id,bus\u no
我尝试了多选回显,我尝试了下面的代码,但它重复了总线号
请帮助我回显所有总线,并回显所选总线旁边的所选
<form name="editstudent" method="get" action="testmulti.php">
<select name="numBus[]" multiple>
<?php
$selBus=mysql_query("SELECT * FROM najdsy_bus order by bus_id");
while ($rowBus=mysql_fetch_array($selBus)) {
foreach ($numBus as $key=> $value) {
if ($rowBus['bus_id']==$value) {
$SelectedBus = "selected";
} else {
$SelectedBus = "";
}
echo '<option value="'.$rowBus['bus_id'].'"'.$SelectedBus.'>'.$rowBus['bus_no'].' '.$SelectedBus.'</option>';
}
}
?>
</select>
<br/>
<input type="submit" value="test">
</form>
将$rowBus[bus\u no]
替换为$rowBus['bus\u no']
,并将$rowBus[bus\u id]
替换为$rowBus['bus\u id']
此更改的原因是$rowBus是一个具有如下结构的数组:array([bus\u id]=>value)
。正如您看到的,它的键是一个字符串,所以要访问它,您必须“告诉”php查找它
字符串可以用
“some\u string”
或“some\u string”
表示。由于键是一些没有任何特殊格式的文本,因此建议您使用“
而不是“
看来你不应该把echo“请停止使用古老的mysql.*
函数编写新代码。它们不再得到维护,社区已开始恢复。相反,你应该学习并使用或。如果您愿意学习,这是一个相当不错的PDO相关教程。请举例说明您获得的输出以及所需的输出。您不应该只选择
。它应该是something
while ($rowBus=mysql_fetch_array($selBus)) {
$SelectedBus="";
foreach ($numBus as $key => $value){
if ($rowBus["bus_id"]==$value){
$SelectedBus="selected";
}
}
echo '<option value="'.$rowBus["bus_id"].'"'.$SelectedBus.'>'
.$rowBus["bus_no"].' '.$SelectedBus.'</option>';
}