在添加商店页面中,我有一个类别列表框,显示数据库中表类别中的类别列表。
添加商店中类别列表框的代码是
<select id="category" multiple="multiple" name="category">
<?php
$ct_query="SELECT * FROM category ORDER BY category_id ASC";
$ct_sel=mysql_query($ct_query);
while($ct_res=mysql_fetch_array($ct_sel))
{
if($row['category_id'] == $ct_res['category_id'])
echo "<option value='".$ct_res['category_id']."' selected=selected>".$ct_res['category_name']."</option>";
else
echo "<option value='".$ct_res['category_id']."'>".$ct_res['category_name']."</option>";
}
?>
</select>
在编辑商店页面中,有相同的列表框。当我在添加商店页面的列表框中选择单个类别时,它在编辑商店页面中正确显示。但是当我在添加商店页面的列表框中选择多个项目时,选定的列表框项目不显示在编辑商店页面中。编辑商店页面中类别列表框的代码是
<select id="category" multiple="multiple" name="category">
<?php
$ct_query="SELECT * FROM category ORDER BY category_id ASC";
$ct_sel=mysql_query($ct_query);
while($ct_res=mysql_fetch_array($ct_sel))
{
if($row['category_id'] == $ct_res['category_id'])
echo "<option value='".$ct_res['category_id']."' selected=selected>".$ct_res['category_name']."</option>";
else
echo "<option value='".$ct_res['category_id']."'>".$ct_res['category_name']."</option>";
}
?>
</select>
在编辑商店页面中,当我在添加商店页面中从列表框中选择多个项目时,应该正确显示多选列表框项目。
我已经尝试了各种代码。没有任何效果。请为此提供一个有值(value)的解决方案。
最佳答案
即使要显示、编辑等,也必须使用相同的代码列出所有项目, 你需要使用 mysqli 而不是 mysql,并且代码必须是这样的:
$sql = "SELECT id, name FROM category ORDER BY id ASC;";
$result = connection()->query($sql);
$rs = mysqli_fetch_assoc($result);
echo "<select id='category' multiple='multiple' name='category'>";
while ($rs != ''){
echo "<option id='".$rs['id']."' value='".$rs['id']."'>".$res['name']."</option>";
}
echo "</select>";
然后,如果你有一些存储在数据库中,你可以读取选定的项目并使用 jQuery 标记为选定(如果我没记错的话,它一定是这样的:$('#idselected').attr(select selected) ;
)
关于php - php 编辑模式下的列表框项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37964240/