从数据库获取数据时在html中多选选项

问题描述 投票:0回答:2

我必须运行 mysql 查询并使用 Select 选项来选择 HTML 表单中的给定数据。 问题是没有选择选项。因为我必须根据商品数量选择选项。例如,我吃了一份披萨和三杯饮料。然后我需要打开 1 个披萨选择选项和 3 个饮料选择选项。

这是我的代码:-

<select class="form-control" name="dealSizeName[]" id="dealSizeName">
<?php 
 $sql3 = mysql_query("SELECT * From `dealsubcategories` WHERE   `Status` ='Y'"); 
while($row3 = mysql_fetch_array($sql3)) { ?>
<option value="<?=$row3['SizeName']." ".$row3['SubCategoryName']?>"> 
              <?=$row3['SubCategoryName']?>
</option>
<?php }  ?>
</select>

我的数据库中有下表:

我想在我的 html 表单中选择 optoin,如下所示:

如果在 DealA 中,Pizza 的数量为 2,则打开两个选择选项。对于汉堡打开 1、对于饮料打开 3 和对于意大利面打开 1 选择我的 html 表单中的选项框。

但我每次都会得到一个选择。如何使其依赖于我的表的归档数量。

javascript php html mysql
2个回答
0
投票

multiple
元素有一个属性
select
,可以帮助您选择多个选项。 由于我对 PHP 没有任何知识,因此我将在 php 中应该做的事情中添加 html 注释。这是您应该尝试的基本要点。

<?php 
     $sql3 = mysql_query("SELECT * From `dealsubcategories` WHERE   `Status` ='Y'"); 
     <!-- for index = 0;index < subCategory.quantity; index ++ -->
        <select class="form-control" name="dealSizeName[]" id="dealSizeName" multiple>
        while($row3 = mysql_fetch_array($sql3)) { ?>
            <option value="<?=$row3['SizeName']." ".$row3['SubCategoryName']?>"> <?=$row3['SubCategoryName']?></option>
        </select>
<?php }?>

0
投票
<?php
// Sample data: Item quantities
$itemQuantities = array(
    'Pizza' => 1,
    'Drinks' => 3
);

// Assuming $conn is your MySQL connection
$sql3 = mysqli_query($conn, "SELECT * FROM `dealsubcategories` WHERE `Status` ='Y'");
while ($row3 = mysqli_fetch_array($sql3)) {
    $itemName = $row3['SubCategoryName'];
    $itemSize = $row3['SizeName'];
    
    // Check if this item exists in the $itemQuantities array
    if (array_key_exists($itemName, $itemQuantities)) {
        $quantity = $itemQuantities[$itemName];
        // Generate select options based on item quantity
        for ($i = 1; $i <= $quantity; $i++) {
            echo '<option value="' . $itemSize . ' ' . $itemName . '">' . $itemName . '</option>';
        }
    }
}
?>
© www.soinside.com 2019 - 2024. All rights reserved.