データベース内のテーブルを検索する検索フォームがあります。テーブルには次の列があります。
icao - 名前 - 国
次のクエリを使用して、これらのフィールドを各行の選択オプションに配置するphpがあります。
public function airportstuff() {
$query = "SELECT icao, name, country
FROM phpvms_airports
ORDER BY icao";
return DB::get_results($query);
}
次に、phpは次のとおりです。
<?php foreach ($airports as $airport)
{echo '<option value="'.$airport->icao.'">'.$airport->icao.' - '.$airport->name.'</option>';}
?>
これは問題なく動作しますが、国の列を optgroup として使用できるようにしたいので、各国が optgroup であり、その国のそれぞれの空港が正しい optgroup に含まれています。
私はこれを試しました:
<?php
foreach ($airports as $airport)
{
echo '<optgroup label="'.$airport->country.'">';
echo '<option value="'.$airport->icao.'">'.$airport->icao.' - '.$airport->name.'</option>';
?>
<?php echo '</optgroup>';}?>
ただし、すべての空港の optgroup を作成するだけです。
これに関するヘルプは非常に高く評価され、事前に感謝します。
スチュアート