我想显示名为"Services"的表中的所有服务,下面是另一个名为"gallery"表中该服务的图片/照片。
数据库:
services:id,serviceName,serviceDesc
库:id,pictureImage,pictureName,pictureDesc
这就是我正在努力实现的目标,
服务1
(图片1((图片2((图片3(
服务2
(图片4((图片5((图片6(
服务3
(图片7((图片8(
这是我的代码:
$query1 = mysqli_query($conn, "SELECT * FROM gallery") OR die("Error: ".mysqli_error($conn));
$query2 = mysqli_query($conn, "SELECT * FROM services") OR die("Error: ".mysqli_error($conn));
while($row2 = mysqli_fetch_array($query2)){
echo"<p>".$row2['serviceName']."</p>";
while($row1 = mysqli_fetch_array($query1)){
echo"
<div class='col-md-3'>
<div class='galleryCard'>
<a href='image/$row1[pictureImage]'><img class='img img-responsive' src='image/".$row1['pictureImage']."' width='100%'></a>
<p class='galleryText'>".$row1['pictureDesc']."</p>
</div>
</div>";
}
}
这是我的学校项目,我很抱歉我的英语不好,问题很乱,我希望你们能理解。谢谢!
将名称为service_id
的另一列添加到表gallery
中(使其与表service
的id
列的类型相同(,并放置每个映像的服务id。然后更改您的代码如下,使神奇的工作
$query1 = mysqli_query($conn, "SELECT * FROM services") OR die("Error: ".mysqli_error($conn));
while($row1 = mysqli_fetch_array($query1)){
echo"<p>".$row2['serviceName']."</p>";
//choose only the images belonging to the service
$query2 = mysqli_query($conn, "SELECT * FROM gallery WHERE `service_id`=".$row1['id']) OR die("Error: ".mysqli_error($conn));
while($row2 = mysqli_fetch_array($query2)){
echo"
<div class='col-md-3'>
<div class='galleryCard'>
<a href='image/".$row1['pictureImage']."'><img class='img img-responsive' src='image/".$row1['pictureImage']."' width='100%'></a>
<p class='galleryText'>".$row1['pictureDesc']."</p>
</div>
</div>";
}
}