我有一个包含表的数据库:
鱼(值为名称、图像、信息、cooking_type_id)和 cooking_type(值为 cooking_type_id,缩略图)
我创建了一个非常简单的 mysqli 查询来显示第一个表中的数据,但我想根据 id 显示缩略图。
因此,对于 cooking_type,“Grill”的 cooking_type_id 可能为 1。鱼“Cod”适合烧烤,因此它在“type_id”下的值为 1。
如何显示缩略图而不是显示“1”?
这是我的查询代码:
$query = "SELECT * FROM `fish`";
$result = $mysqli->query($query);
$mysqli->set_charset("utf8");
while($row = mysqli_fetch_array($result)){
echo '<div class="row" style="background-color:#fff;">';
echo '<div class="col-sm-2">';
echo '<div class="listphoto">';
echo $row['image'];
echo '</div></div>';
echo '<div class="col-sm-2">';
echo '<div class="listtext"><h3>';
echo $row['name'];
echo '</h3></div></div>';
echo '<div class="col-sm-2">';
echo '<div class="typephoto">';
echo $row['type_id'];
echo '</div></div>';
echo '</div>';
}
mysqli_close($conn);
最佳答案
$query = "SELECT fish.image, fish.name, cooking_type.thumbnail FROM fish
JOIN cooking_type
ON fish.cooking_type_id = cooking_type.cooking_type_id;";
$result = $mysqli->query($query);
$mysqli->set_charset("utf8");
while($row = mysqli_fetch_array($result)){
echo '<div class="row" style="background-color:#fff;">';
echo '<div class="col-sm-2">';
echo '<div class="listphoto">';
echo $row['image'];
echo '</div></div>';
echo '<div class="col-sm-2">';
echo '<div class="listtext"><h3>';
echo $row['name'];
echo '</h3></div></div>';
echo '<div class="col-sm-2">';
echo '<div class="typephoto">';
echo $row['thumbnail'];
echo '</div></div>';
echo '</div>';
}
mysqli_close($conn);
关于php - 如何很好地显示来自两个不同 mysql 表的数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30214605/