HTML/PHP DropDownList未按要求填充,即使数据位于数据库中
我正在尝试使用以下源来填充DropDownList。数据库中的某些表行在“alias_name”列中标记为“Option 1”、“Option 2”或“Option 3”。其他未标记的表行在“alias_name”列中具有空值。结果填充的DropDownList显示所有名称,但所有行中只有一行具有应连接到名称的“-选项#”。单独的DB查询证明数据在数据库中,14行选项中的一行正确显示的事实令人困惑。有什么想法吗HTML/PHP DropDownList未按要求填充,即使数据位于数据库中,php,html,Php,Html,我正在尝试使用以下源来填充DropDownList。数据库中的某些表行在“alias_name”列中标记为“Option 1”、“Option 2”或“Option 3”。其他未标记的表行在“alias_name”列中具有空值。结果填充的DropDownList显示所有名称,但所有行中只有一行具有应连接到名称的“-选项#”。单独的DB查询证明数据在数据库中,14行选项中的一行正确显示的事实令人困惑。有什么想法吗 <select name="event_names[]" multiple="
<select name="event_names[]" multiple="multiple" size="6">
<option value="all"<?php if(empty($event_names)||@in_array('all', $event_names))echo' selected';?>>ALL</option>
<?php
$m = Db::doQuery("SELECT name,alias_name FROM site_events WHERE name != '' GROUP BY name");
while ($n = $m->fetch_object()) {
$e_alias = '';
$e_name = $n->name;
$e_alias = $n->alias_name;
if($n->alias_name=='Option 1' || $n->alias_name=='Option 2' || $n- >alias_name=='Option 3')
{echo '<option value="'.$e_name.'"'.(@in_array($e_name, $event_names)?' selected':'').'>'.$e_name.' -- '.$e_alias.'</option>';}
else {echo '<option value="'.$e_name.'"'.(@in_array($e_name, $event_names)?' selected':'').'>'.$e_name.'</option>';}
}
?>
</select>
在循环过程中,能否回显$e_alias(或$n->alias_name)的内容,以查看它们是否填充了正确的值?另外,您是否查看了HTML代码,以确保脚本没有生成任何格式错误的HTML,这可能会迫使浏览器无法正确呈现选择框?问题已解决,程序正在查看未正确填充的测试数据库。