私はフォーム内にある複数のhtmlオプション要素の汎用関数を作成しようとしています。オプションリストは各要素ごとに異なるので、私がしたいのは、私のmysqlテーブルでそれらを参照する 'id'に基づいてオプションを表示することです。これは配列になります。テーブルには2つのカラムがあり、最初の 'id'は数字だけで、2番目の 'prod_option'は表示したい値です。誰かが私のコードに間違っていることを説明できますか?選択要素に出力する配列を使用したmysqlクエリ
ここで私はselect要素の中で関数を呼び出します。私は接続に問題はありません。
//This should select 'prod_option' for id's 1,2 & 3 for example
<td><div class="formInput"><label>Cap or Vac:</label>
<select name="pack_req" id="pack_req[]"
value="**<?php $newProd->packRequirements(1,2,3); ?>**" /></select></div></td>
//function in class
public function packRequirements($values){
$con = $this->connection;
$itms = array($values);
$sql = $con->query("SELECT `prod_option`
FROM `packaging_requirements`
WHERE `id` IN('".implode("', '", $itms)."')");
while($r = $sql->fetch_array(MYSQLI_ASSOC)):
echo '<option value="'$itms['prod_option']'"</option>';
endwhile;
}
あなたの素早い返信をありがとう。私はあなたがselectオプションに推奨する変更を行いました。しかし、まだ値をエコーしません。$ itms ['prod_option']をエコーする必要があるかどうかわかりません。たぶん、私は結果をエコーする必要がありますが、どのように確認してください。 – paynod
そこにあるべきものと何があるべきかを比較する。 "; – pp19dd