提前谢谢你的帮助。这个列表是为了更新现有的记录,所以它是从一个带有$rs_fullcat
的数据库填充的,然后用另一个记录集$rs_cat
检查最初选择的值。我只能得到它最初选择一个值,第一个在$rs_cat
,但是我需要它来从数据库中选择所有现有的选项。我觉得我很接近,但我在任何地方都找不到答案。代码如下:
<select name="category" multiple="multiple" id="category">
<?php
do {
?>
<option value="<?php echo $row_rs_fullcat['categoryID']?>"<?php if (!(strcmp($row_rs_fullcat['categoryID'], $row_rs_cat['categoryID']))) {echo "selected=\"selected\"";} ?>><?php echo $row_rs_fullcat['category_name']?></option>
<?php
} while ($row_rs_fullcat = mysql_fetch_assoc($rs_fullcat));
$rows = mysql_num_rows($rs_fullcat);
if($rows > 0) {
mysql_data_seek($rs_fullcat, 0);
$row_rs_fullcat = mysql_fetch_assoc($rs_fullcat);
}
?>
</select>
最佳答案
您要做的是首先从数据库中选择(并提取)所有选定的对象,然后将它们放入一个变量中(在您的示例中为$rs_cat
)。然后,在while
循环中,执行in_array()
检查以查看是否选择了该值是一件简单的事情。
关于php - PHP动态选择列表中的多个初始选择值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7268907/