[英]Populate multi-select with php while loop from db
以下是在当地环境中工作的。 现在,除了这些看起来有效之外,所有东西都被推送了。 显示完全空的选择框现在没有检查或空白标签只是在“选择选项”下拉列表中的空白空间。 选择显示
<?php
$selected = array();
$selected = explode(",",$fill['markets']);
$condb = mysql_query("SELECT * FROM `countries`");
$count = mysql_num_rows($condb);
$countries = array();
$str;
while ($countries = mysql_fetch_array($condb))
{
$str = "option{$countries['id']}";
echo "<option value='{$str}' ";
if(in_array($str,$selected)) {
echo "selected>";
echo $countries['country'];
echo "</option>";
} else {
echo ">";
echo $countries['country'];
echo "</option>";
}
}
?>
你应该使用while循环。 如果需要,可以在循环外声明$i
,请尝试以下代码:
$condb = mysql_query("SELECT * FROM `countries`");
$i = 0;
while($countries = mysql_fetch_array($condb)) {
$str = 'option' . $i;
echo "<option value='{$str}' ";
if(in_array($str,$selected)) {
echo "selected>";
echo $countries['country'];
echo "</option>";
} else {
echo ">";
echo $countries['country'];
echo "</option>";
}
$i++;
}
?>
</select>
注意:
从php-5.5开始,不推荐使用mysql_*
。 所以改为使用mysqli_*
或PDO
。
为什么我不应该在PHP中使用mysql_ *函数?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.