在下拉列表中显示来自mysql的选定选项

时间:2013-11-04 13:09:56

标签: php mysql forms

我有一个显示mysql选项的下拉列表,没问题。当我想显示之前已经选择的选项时,问题出现在更新页面上。

下拉列表从边距表中选择选项,并将值放入products表中的字段中。

这是选择产品记录的查询:

<?php
$recordID = $_GET["recordID"];
$product_result = mysqli_query($con,"SELECT * FROM products WHERE product_code='$recordID'") or die(mysqli_error($con)); 
$product = mysqli_fetch_array($product_result);
$checked_special = $product['product_special'];
$checked_publish = $product['product_publish'];
$checked_frontpage = $product['product_display_frontpage'];
$checked_facebook = $product['display_facebook'];

  {
    ?>  

这是表格的一部分,它从边距表中获取选项并在页面上显示。

<tr>
<td>Display Facebook</td>
<td><input type="checkbox" name="display_facebook" id="display_facebook" value="y" <?php if ($checked_facebook == 'y') echo 'checked'; ?> /></td>
<td><strong>Margin Group :</strong></td>

<td> 
<select name="margin_group" id="margin_group"><?php 
$resul2 = mysqli_query($con,"SELECT * FROM margins");
while($row2 = mysqli_fetch_array($resul2))
  {
 ?> <option value="<?php echo $row2['margin_group']; ?>"> <?php echo $row2['margin_group']; ?></option>
    <?php }  ?>   </select></td>
</tr>

如何从产品表格中将$ product ['margin_group']值显示为下拉列表中的选定选项,以便用户无需在每次更新页面时重新选择。

谢谢:)

MsKazza

2 个答案:

答案 0 :(得分:1)

我们的想法是在所需的选项标签中添加单词selected,如下所示:

<option value="x" selected>x</option>

这种方式将以Check this的形式选择 为了做到这一点,我们将为while循环中的每个选项值创建一个条件语句。如果值符合条件,我们将回显单词selected

<?php while($row2 = mysql_fetch_array($resul2):  ?>
    <option value="<?= $row2['margin_group']; ?>" 
    <?php if($row2['margin_group']) == $products_table_variable) : ?> 
        selected
    <?php endif; ?> 
><?= $row2['margin_group']; ?></option>
<?php endwhile ?>

答案 1 :(得分:0)

<select name="margin_group" id="margin_group">

<?php 
$datasource = mysqli_query($con,"SELECT * FROM margins");
while($getdata= mysql_fetch_array($$datasource)){
?>
<option value="<?=$row2['margin_group']?>" <?php if($getdata['colume_name']==$row2['margin_group']) echo "selected";?>> <?=$row2['margin_group']?></option>
<?php } ?>
</select>

希望它会对你有所帮助:)。