0

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>";
}

これにより、データベースからすべてのタイトルが抽出され、一度に 1 つずつ表示されます。

これらすべてのタイトルをドロップダウン メニューのオプションとして表示して、ユーザーがどのタイトルを読むかを選択できるようにする方法はありますか?

4

2 に答える 2

1

このようなものがうまくいくはずです。クエリの動作方法を変更しました。特定の 1 つの ID だけでなく、一連の記事の記事 ID をクエリで指定する場合、取得する ID ごとに 1 つではなく、1 つのクエリのみを実行できるはずです。私が提案したアプローチを使用するかどうかに関係なく、ドロップダウン メニューを作成するための構文は同じでなければなりません。

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

HTML<select>タグの作成方法については、こちらを参照してください。

于 2015-10-12T23:35:29.493 に答える
0

...の線に沿って何かを試してください...

echo '<select name="dropdownname">';

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

echo '</select>';
于 2015-10-12T23:35:14.813 に答える