【发布时间】:2014-08-04 18:09:05
【问题描述】:
我不是 php 和 mysql 方面的专家,但我正在尝试,我有一个问题要解决,但有点卡住了......
我想向用户显示一个多选菜单,其中包含他之前所做的选中选项,并且存储在 mysql 中。我的代码的问题,我很确定,是在 foreach 循环中。用户预先做出的选择以 1,2,3,4 等格式存储......现在我需要在他试图编辑他的信息时检查这个预先选择的选项。
他的选择保存在一个sql表中,所有选项都在一个单独的表中。我希望我写了这个,以便你能理解。谢谢你的帮助。下面是我的代码到目前为止,它正在工作,但在这种情况下,用户有 4 个预选选项,所有内容在我们的多选中显示 4 次...
$skupine = mysql_real_escape_string($rows_blog['sku_id']);
$skupine_id = explode(',',$skupine);
echo "<select name='skupina[]' multiple='multiple'>";
$sql_skupina = "SELECT sku_id, title FROM skupine ORDER BY sku_id DESC";
$result_skupina = mysql_query($sql_skupina);
while ($row_skupina = mysql_fetch_array($result_skupina)) {
foreach ($skupine_id as $value){
echo '<option value="'.$row_skupina['sku_id'].'"'. (!strcmp($row_skupina['sku_id'],$value)?'
selected':'').'>'.$row_skupina['title'].'</option>';
}
}
echo "</select>";
【问题讨论】:
-
$rows_blog是如何填充的? -
预选的 id 插入如下: $skupine = $_POST['skupina']; $skupine_id = implode(',',$skupine);
标签: php arrays loops variables foreach