私は、データベーステーブルにある多くのオプションを含むドロップダウンリストを作成しようとしています。PHPの動的ドロップダウンリスト
$qry3 = "SELECT * FROM employees WHERE buss_id_fk = '{$_SESSION ['user_id']}' ";
$result3 = mysqli_query ($con, $qry3);
while ($row4 = mysqli_fetch_assoc($result3)){
echo $row4['emp_id'] . " " . $row4['username'] . '</br>';
}
$ qry3は私のクエリです。$ row4でうまく動作し、すべてが意図どおりに表示されます。私は私のフォームに移動するとき、それはその$のROW4がやったように、いくつかを示す必要がありながら、今ダウンリスト私のドロップが存在しなければならないところ、私はこのコード
<!--the list of employees the business has -->
<select name="employees" class="form-control">
<?php while ($row3 = mysqli_fetch_assoc($result3)) {
echo "<option value='" .$row3['emp_id']. "'>" .$row3['username']. "</option>" ;
} ?>
</select> <br>
作らダウンリスト私のドロップはゼロ結果を示しています。コードに誤字があった場合も同様の質問を確認しましたが、助けにはなりませんでした。ありがとう!
あなたは、コードの両方の例を持っていますか同時に走っている?もしそうなら、それは私が思うところで問題になるでしょう。すべての$ result3を$ row4でループすると、mysqlのポインタが最後に移動したので、select($ row3)に移動するとループする行はなくなります。 –
$ row3が実際には動かないうちに$ row4を作ったので、なぜポインタが値の先頭にないのか分かりません。そのコードの前にそのテーブルに何も操作していません。しかし、他のテーブル上でいくつかのSQL移動を行います。なぜこれが起こるのか混乱させる。ご意見ありがとうございます! – Mar1AK
**警告**:mysqliを使用する場合は、[パラメータ化されたクエリ](http://php.net/manual/en/mysqli.quickstart.prepared-statements.php)と['bind_param']( http://php.net/manual/en/mysqli-stmt.bind-param.php)を使用してクエリにユーザーデータを追加します。 **重大な[SQLインジェクションのバグ](http://bobby-tables.com/)を作成したため、文字列の補間または連結を使用してこれを実行しないでください。 ** '$ _POST'、' $ _GET'、**任意の**ユーザデータを直接クエリーに入れないでください。誰かがあなたのミスを悪用しようとすると非常に危険です。 – tadman