ユーザーが顧客名を検索でき、その顧客の住所がすべて表示されるデータベースの検索フォームを作成しようとしています。私の構造はこのように見えます
顧客テーブル
- ID
- ファーストネーム
- 苗字
- 会社名
アドレステーブル
- ID
- ライン1
- 郵便番号
- 町
- 顧客ID
サイトテーブル
- ID
- Address_ID
- ノート
最初、最後、または会社名のいずれかを入力として受け取り、これを変数として、検索する列とともに保存します。次に、次のクエリを使用して、データベースの一致基準を確認します。
$data = mysql_query("SELECT * FROM customer INNER JOIN address ON customer.ID = address.Customer_ID INNER JOIN sites ON address.ID = sites.address_ID WHERE upper(customer.$field) LIKE'%$query%'") ;/
を使用して結果を印刷します
while($results = mysql_fetch_array($data)){
echo "<br>";
echo $results['First_Name'];
echo " ";
echo $results['Surname'];
echo $results['town'];
echo " ";
echo $results['postcode'];
この問題は、1人の顧客が複数の住所を持っている場合に発生します。異なる自宅の住所とサイトの住所。クエリは、アドレスの1つであるサイトアドレス(2番目に送信され、ホームアドレスを上書きしているように見える)のみを出力します。
アドレステーブルでは、これらのアドレスの両方に同じCustomer_IDが含まれていますが、1つだけではなく、両方を表示するにはどうすればよいですか?