html中的下拉列表,带有基于php行的选项

50pmv0ei  于 2021-06-19  发布在  Mysql
关注(0)|答案(2)|浏览(260)

我想根据从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数据库中的每个变量创建一个下拉列表。
有什么办法解决这个问题吗?

mdfafbf1

mdfafbf11#

<?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 }  ?>

select标记应该在while循环之外

6vl6ewon

6vl6ewon2#

您正在使用 select 内部标记 while 循环这就是为什么它要重复多次。

<?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 } ?>

相关问题