Bootstrap 用空白条目填充的下拉列表(MYSQLI查询)

nbysray5  于 2022-12-08  发布在  Bootstrap
关注(0)|答案(1)|浏览(107)

我正在用引导类“form-control”创建一个下拉选择框。
对于选择,我使用MYSQLI查询来绘制类别的名称。但是,我的下拉列表在每个实际值之间填充了来自数据库的空白选项。代码如下所示:

<?php

        echo '<select class="form-control">';
        $query= "SELECT * FROM categories";
        $select_all_categories_queries=mysqli_query($connection,$query);

        while ($row = mysqli_fetch_assoc($select_all_categories_queries)) {
            $cat_title = $row['cat_title'];
            if (!empty($cat_title)){
            echo "<option>
                   {$cat_title}
                    <option>"; 
        }
           }
        echo '</select>';
        ?>

我试过使用If语句来过滤掉“空”条目,即使我的数据库没有空条目。但是它不起作用。
P.S我正在使用Bootstrap 3(此网站使用旧课程的工作环境)
以下是HTML输出:

<select class="form-control">
<option>Business</option>
<option></option>
<option>World</option>
<option></option>
<option>Learning</option>
<option></option>
<option>Javascript</option>
<option></option>
<option> Bootstrap</option>
<option></option>
<option>Laravel</option>
<option></option>
</select>

这是查询的输出

Array
(
    [cat_id] =&gt; 1
    [cat_title] =&gt; Business
)
Array
(
    [cat_id] =&gt; 2
    [cat_title] =&gt; World
)
Array
(
    [cat_id] =&gt; 3
    [cat_title] =&gt; Learning
)
Array
(
    [cat_id] =&gt; 4
    [cat_title] =&gt; Javascript
)
Array
(
    [cat_id] =&gt; 5
    [cat_title] =&gt; Bootstrap
)
Array
(
    [cat_id] =&gt; 6
    [cat_title] =&gt; Laravel
)
koaltpgm

koaltpgm1#

正确的代码是

<?php

        echo '<select class="form-control">';
        $query= "SELECT * FROM categories";
        $select_all_categories_queries=mysqli_query($connection,$query);

        while ($row = mysqli_fetch_assoc($select_all_categories_queries)) {
            $cat_title = $row['cat_title'];
            if (!empty($cat_title)){
            echo "<option>
                   {$cat_title}
                    </option>"; //  <--------
        }
           }
        echo '</select>';
        ?>

第二个必须是。否则浏览器会认为那里有两个选项标签。

相关问题