誰かが私を正しい方向に向けることができることを願っています。
プライマリ ID と国名 (フランスなど) を含む COUNTRY テーブルがあります。
プライマリ ID、支払い方法 ID (例: 4)、国 ID を含む 2 番目のテーブル PAYMETHODS_COUNTRIES があります。
どの国 (またはどの国のユーザー) がそれらのローカルの支払い方法にアクセスできるかを制御するために、各支払い方法のチェックボックスのリストを出力しようとしています。
チェックボックスのリストは正常に機能しており、フォームの処理も機能しています。最後に残っていることは、選択された国 (たとえば、この支払い方法はフランスとドイツで利用可能) が CHECKED として示されている国のチェックボックスのリストを出力することです。
だから私がやろうとしているのは、すべての国の完全なリストを出力することです
SELECT id, name FROM country ORDER BY id ASC
そして、このようなPAYMETHODS_COUNTRIESテーブルを含めます(もちろん機能しません)
SELECT country.id AS countryid,
country.name AS countryname,
paymethods_countries.id AS methodid
FROM country LEFT JOIN `paymethods_countries`
ON country.id = paymethods_countries.country
WHERE paymethods_countries.paymethod = 10
このクエリの例では、実際に PAYMETHODS_COUNTRIES にレコードがある行のみを表示しています。
私が望んでいたのは、最後のフィールド (PAYMETHODS_COUNTRIES テーブルの ID) を含む、country.id + country.name の完全なリストです。これは、リンクがない場合は null にする必要があります。そうすれば、null かどうかをチェックし、それらの行に対して CHECKED を出力できるはずです。
それが理にかなっていることを願っています-または、誰かが私がやっていることを達成するためのより良い方法を知っているなら、あなたの考えは高く評価されます.