【问题标题】:How can I use the results of my query in a dropdown menu?如何在下拉菜单中使用我的查询结果?
【发布时间】:2015-10-12 23:22:31
【问题描述】:

我正在尝试创建一个下拉菜单,其中包含使用 for 循环从数据库中恢复的某些字段作为选项。

我正在做以下事情:

for ($article_id=1; $article_id <=30; $article_id++) 
{
    $sqltitles = "SELECT title FROM articles WHERE article_id='$article_id'";
    $cursor = mysqli_query($db, $sqltitles) or die($sqltitles."<br/><br/>".mysql_error());
    $row = mysqli_fetch_row($cursor);
    $titles = $row[0];

    echo $titles;
    echo "</br>";
}

它从数据库中提取所有标题并一次显示一个。

有没有办法让所有这些标题显示为下拉菜单的选项,以便用户选择要阅读的标题?

【问题讨论】:

    标签: php for-loop dropdown


    【解决方案1】:

    这样的事情应该可以工作。我对查询的工作方式进行了修改。如果您在查询中为一系列文章指定文章 ID 而不仅仅是一个特定 ID,您应该能够只执行一个查询,而不是为每个要检索的 ID 执行一个查询。无论您是否决定使用我建议的方法,创建下拉菜单的语法都应该相同。

    <select>
    <?php 
        $sqltitles = "SELECT title FROM articles WHERE article_id BETWEEN 1 AND 30" ;
        $cursor = mysqli_query($db, $sqltitles) or die($sqltitles."<br/><br/>".mysql_error());
        while ($row = mysqli_fetch_row($cursor)) {
            echo '<option value ="' . $row[0] . '">' . $row[0] . '</option>';
        }
    ?>
    </select>
    

    Here 是如何创建 HTML &lt;select&gt; 标记的一个很好的参考。

    【讨论】:

    • 谢谢,这正是我想要的。
    【解决方案2】:

    尝试类似...

    echo '<select name="dropdownname">';
    
    foreach ($titles as $key => $val) {
        echo('<option value="' . $val .'">' . $val . '</option>');
    }
    
    echo '</select>';
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-08-16
      相关资源
      最近更新 更多