<table class="table table-bordered table-hover table-responsive bgwhite clgray">
<thead>
<tr>
<th class="text-center text-capitalize" width="20">
No
</th>
<th class="text-center text-capitalize">
idbarang
</th>
<th class="text-center text-capitalize">
Kategori
</th>
<th class="text-center text-capitalize">
Merk
</th>
<th class="text-center text-capitalize">
Foto
</th>
<th class="text-center text-capitalize">
Stok
</th>
</tr>
</thead>
<?php
$queryStok = "SELECT SUM(stok) AS jumlahbarang FROM tabelstok WHERE idjenisusaha=1 GROUP BY idbarang";
$resultStok = mysqli_query($link,$queryStok);
$queryStok2 = "SELECT * FROM tabelbarang,tabelmerk WHERE tabelbarang.idmerk=tabelmerk.idmerk";
$resultStok2= mysqli_query($link,$queryStok2);
while ($datastok=mysqli_fetch_assoc($resultStok,$resultStok2)) {
?>
<tbody>
<tr>
<td class="text-center text-capitalize">
<?php echo $datastok['merk'] ?>
</td>
<td class="text-center text-capitalize">
No
</td>
<td class="text-center text-capitalize">
No
</td>
<td class="text-center text-capitalize">
No
</td>
<td class="text-center text-capitalize">
No
</td>
<td class="text-center text-capitalize">
<?php echo $datastok['jumlahbarang'];?>
</td>
</tbody>
<?php } ?>
</table>
如何在A SINGLE循环中显示包含2个查询的2个表的结果。
答案 0 :(得分:1)
如果要显示两个查询的结果而不写入两个while
循环,则应使用mysqli_multi_query()
函数一次执行多个查询。每个语句最后都应有一个半音(最后一个语句不应包含semicollon)。您可以根据需要添加任意数量的查询。
$query = "YOUR FIRST STATEMENT;";
$query .= "YOUR SECOND STATEMENT";
$result = mysqli_multi_query($link, $query);
do {
$result = mysqli_store_result($link);
while ($row = mysqli_fetch_row($result)) {
// DO YOUR STUFF HERE WITH $row
}
mysqli_free_result($result);
} while (mysqli_next_result($link));
如果要将查询合并为一个,那么如果有一个列连接/关联两个表,那么在构建查询时应使用JOIN
。例如:
SELECT customers.id, customers.name FROM customers
INNER JOIN details ON customers.id=details.user_id;
这会将details
表中的元素与customers
表中的元素合并,并通过公共值(客户ID)进行链接。
由于您没有显示数据库的结构,而且我无法根据您的代码显示示例,只是一般情况。