0
我需要帮助,我很困惑,想如何做到这一点。使用数据库列表项检查列表框中的列表项
我有一个窗体,更新/编辑窗体,里面我有一个多选的列表框。
在我的数据库记录:
ID Items
1 Apple
2 Banana
3 Orange
4 Pear
5 Starfruit
每当用户点击编辑这使他们这种形式,我取得了按照其先前保存的数据突出显示在列表框中。
当用户点击更新,在更新表单列表框看起来就像这样:
<option selected>Apple</option> <-- highlighted
<option>Banana</option>
<option selected>Orange</option> <-- highlighted
<option>Pear</option>
<option selected>Starfruit</option> <-- highlighted
这是用户将根据其先前保存他们的第一个选择的项目看。上等等
<?php
$select=mysql_query("select * from products_list where id='$id' ");
while($row=mysql_fetch_array($select)){
$product_category = explode("\n", $row['category']);
$i=0;
echo '<select name="product_category[]" id="category" size="9" multiple="multiple"><option value="Black" ';
if ($product_category[$i] == "Black"){ echo 'selected="selected"'; $i++; }
echo '>Black</option><option value="White" ';
if ($product_category[$i] == "White"){ echo 'selected="selected"'; $i++; }
echo '>Black</option><option value="Blue" ';
if ($product_category[$i] == "Blue"){ echo 'selected="selected"'; $i++; }
echo '>Black</option>';
}
?>
所以:
目前我正在做硬编码它。我只列出几个。所以我想问一下,如果我的列表框选项没有被硬编码,我可以做到这一点吗?
希望你们明白。提前致谢。
召唤嗨,对于类别阵列,必须是被硬编码?我可以从另一个已经有一组选项的数据库中取出数组吗? – Dr3am3rz 2012-07-30 10:05:17
当然可以。只需循环遍历数据库中的行并推送数组中的类别即可。我不知道你的数据库结构和字段是如何相关的,所以我不能更具体。 – Summoner 2012-07-30 10:06:20
对不起,因为我对你的代码很迷惑。 = X 比方说,我有2个数据库 Database_1(所有可用的选项) ID项目 1白 2黑 3蓝 了Database_2(用户选择存储在数据库中) 项目 白 黑色 这足够清楚了吗? – Dr3am3rz 2012-07-30 10:12:53