首页 > 解决方案 > HTML 中的下拉列表,带有基于 php 行的选项

问题描述

我想根据从 MySQL 数据库获得的选项制作一个下拉列表。此时我的代码如下所示:

<?php
if ($resultCheck12 > 0) {
    while ($row = mysqli_fetch_assoc($result12)) { ?>
        <select name="storage_location[]" required>
            <option value=""></option>
            <option value="<?php echo $row['id']; ?>"><?php echo $row['storage_name']; ?></option>
        </select>
<?php } } ?> 

如果没有系统地编码,这段代码应该会产生如下所示的结果:

<select name="sample_group[]" class="sample_group" required>
    <option value=""></option>
    <option value="water">Water</option>
    <option value="pharmaceutical">Pharmaceutical</option>
    <option value="food">Food</option>
    <option value="food">Swabs</option>
    <option value="custom">Custom</option>
</select>   

然而,结果会产生这样的结果:

<select name="sample_group[]" class="sample_group" required>
    <option value=""></option>
    <option value="water">Water</option>
</select>
<select name="sample_group[]" class="sample_group" required>
    <option value=""></option>
    <option value="pharmaceutical">Pharmaceutical</option>
</select>
<select name="sample_group[]" class="sample_group" required>
    <option value=""></option>
    <option value="food">Food</option>
</select>
<select name="sample_group[]" class="sample_group" required>
    <option value=""></option>
    <option value="swabs">Swabs</option>
</select>
<select name="sample_group[]" class="sample_group" required>
    <option value=""></option>
    <option value="custom">Custom</option>
</select>

它不是为 MySQL 数据库中的每个变量生成一个下拉列表,而是生成一个下拉列表。

任何想法如何解决这个问题?

标签: phphtmlmysqldrop-down-menu

解决方案


    <?php
       if ($resultCheck12 > 0) { ?>
          <select name="storage_location[]" required>
            <option value=""></option>
            <?php while ($row = mysqli_fetch_assoc($result12)) { ?>
            <option value="<?php echo $row['id']; ?>"><?php echo $row['storage_name']; ?></option>
          <?php }  ?> 
        </select>
     <?php }  ?> 

选择标签应该在while循环之外


推荐阅读