我有一个包含四个字段的数据库表。如何显示同名多个记录?
id
是我的primary key
,其余的字段是:餐厅的名称,地址和电话号码。现在,我有很多的餐馆属于不同的链条,所以我把它们使用相同的name
及其address
和phone no
领域保存这个样子:
这是我的数据库看起来像:
id | name | address | Phone_no |
1 | restaurant1 | address1 | XXXXXX1 |
2 | restaurant1 | address2 | XXXXXX2 |
3 | restaurant1 | address3 | XXXXXX3 |
4 | restaurant2 | address1 | XXXXXX1 |
5 | restaurant2 | address2 | XXXXXX2 |
6 | restaurant3 | address1 | XXXXXX1 |
7 | restaurant4 | address1 | XXXXXX1 |
我怎么想表明它在我的网页:
| name | address | Phone_no |
| restaurant1 | address1 | XXXXXX1 |
| | address2 | XXXXXX2 |
| | address3 | XXXXXX3 |
| restaurant2 | address1 | XXXXXX1 |
| | address2 | XXXXXX2 |
| restaurant3 | address1 | XXXXXX1 |
| restaurant4 | address1 | XXXXXX1 |
现在我想使用PHP显示它,其名称,地址和电话号码为,但名称应仅显示一次。
这是我的PHP代码:
<?php
//this is my query.
$query = "SELECT * FROM details WHERE cat_id = $id GROUP BY name";
$result = mysqli_query($con,$query);
while($row = mysqli_fetch_array($result)){
?>
<table>
<tr>
<td><?php echo cfirst($row['name'] ?></td>
<td><?php echo row['address'] ?></td>
<td><?php echo row['phone'] ?></td>
</tr>
</table>
<?php } ?>
此查询的结果是:
| name | address | Phone_no |
| restaurant1 | address1 | XXXXXX1 |
| restaurant2 | address1 | XXXXXX1 |
| restaurant3 | address1 | XXXXXX1 |
| restaurant4 | address1 | XXXXXX1 |
你在哪里显示?你在while循环中运行它?显示一些代码 –
如果您使用WHERE name ='SALT'N PEPPER',它将会出现错误,因为您在PEPPER之前结束了您的查询。使用双引号.. WHERE name =“SALT'N PEPPER” –
你的php代码是否回应任何结果?因为我在你的代码中看到你为while循环指定了一个条件,但是没有用花括号括住你的结果? “{}”至于给予餐厅的标题,只是从while循环中排除名称作为内容的标题。 –