我正在尝试为我的数据库创建一个搜索表单,用户可以在其中搜索客户名称,并显示所有客户地址。我的结构看起来像这样
客户表
- ID
- 名
- 姓
- 公司名称
地址表
- ID
- 1号线
- 邮政编码
- 镇
- 客户ID
站点表
- ID
- 地址_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'];
当一个客户有多个地址时,就会出现问题。家庭地址和站点地址不同。查询将只打印其中一个地址,即站点地址(第二次提交,似乎覆盖了家庭地址)
在地址表中,这两个地址都包含相同的 Customer_ID,我怎样才能让它们都显示而不仅仅是一个?