【发布时间】:2013-06-29 01:02:13
【问题描述】:
我正在尝试生成一个选择列表,其中所选选项等于包含该列表的组元素。
这是我的代码:
echo '<select title="Show Article in Group" id="edt-select-art">';
$result = mysqli_query($con,"SELECT * FROM groups");
$groups = array();
while($row = mysqli_fetch_array($result)) {
array_push($groups, $row['0']);
foreach($groups as $group)
{
if($gID == $group)
{
echo '<option agid="'.$row['0'].'" selected>'.$row['2'].'</option>';
}
else
{
echo '<option agid="'.$row['0'].'">'.$row['2'].'</option>';
}
}
}
echo '</select>';
如果我将 foreach 放在 while 之外,我无法获得 row[] 数据,但如果我把它放在里面,它的值会增加一倍或三倍。
关于如何完成这项工作的任何想法?
【问题讨论】:
-
您正在将该行推送到您的数组 $groups 上。然后,您将单步执行同一个数组并对其进行处理。因此,您当然会得到重复项-每次都会重复第一个条目。此外,您的
<select>没有name属性,这可能会导致问题。 -
我希望数组包含 id。如果我打印它,它看起来没问题。
-
你为什么要使用 $groups?为什么不直接使用 $rows 中的数据?
标签: php