PHP を使用して、別のテーブルの特定の列のデータをドロップダウン メニューに入力しようとしています。しかし、入力するメニューがたくさんあるので、それぞれに固有の関数を作成する代わりに、列名 (フィールドですよね?) を関数に渡したいと思いました。
現在、私はこれを1つのメニューに持っています
function print_dropdown($query, $link){
$queried = mysql_query($query, $link);
$menu = '<select name="wholesaler" id="wholesaler">';
while ($result = mysql_fetch_array($queried)) {
$menu .= '<option value="' . $result['id'] . '">' . $result['wholesaler'] . '</option>';
}
$menu .= '</select>';
return $menu;
}
...
<?php echo print_dropdown("SELECT id, wholesaler FROM wholesaler_flag LIMIT 0, 10", $connect_normas_boudoir);
?>
しかし、私はこれをしたい:
function get_field($table){
$col_2 = mysql_query('SHOW COLUMNS FROM "$table" WHERE FIELD = 2');
return $col_2;
}
function print_dropdown($query, $link){
$queried = mysql_query($query, $link);
$menu = '<select name="'$col_2'" id="'$col_2'">';
while ($result = mysql_fetch_array($queried)) {
$menu .= '<option value="' . $result['id'] . '">' . $result['$col_2'] . '</option>';
}
$menu .= '</select>';
return $menu;
}
...
<?php
get_field(wholesaler_flag);
echo print_dropdown("SELECT id, wholesaler FROM wholesaler_flag LIMIT 0, 10", $connect_normas_boudoir);
?>
各テーブルの 2 番目のフィールドを選択しようとするのは不適切ですか? 私の場合、関連する各テーブルには2つの列しかありません。しかし、将来的には、理論的には id の後に新しい列が挿入される可能性があることを理解しています。これを行うより良い方法はありますか?一重引用符と二重引用符を間違えた場合は、ご容赦ください。まだまだ勉強中。
注:SHOW COLUMNS FROM wholesaler_flag WHERE FIELD = 2;
MySQL コンソールで試しました。もちろんうまくいきませんでしたが、それにアクセスする方法があるのではないかと思いました。これは、私の質問が関係している特定の領域です。