[英]PHP fetch data from mysql and show accordingly
我有一个包含产品和类别表的数据库。 我设法显示了产品类别及其相关产品。 而且目前看起来像下面。
但是我需要这样做
Category B
Product 1
Category A
Product 2
Product 3
Product 4
Product 5
以下是我的查询
<?php
if(mysqli_num_rows($result) > 0)
{
while($row = mysqli_fetch_array($result))
{
?>
<h1><?php echo $row["name"];?></h1>
<p><?php echo $row["prod_desc"];?></p>
<a href=""><?php echo $row["prod_name"]; ?></a>
<?php echo $row["quantity"]; ?>
<?php echo $row["buy_price"]; ?>
<?php
}
}
?>
首先重新排列数组,然后尝试使用它来显示数据
<?php
$final_array = [];
if(mysqli_num_rows($result) > 0) {
while($row = mysqli_fetch_array($result)){
$final_array[$row["name"]][] = ['prod_desc'=>$row["prod_desc"],'prod_name'=>$row["prod_name"],'quantity'=>$row["quantity"],'price'=>$row["buy_price"]];
}
?>
<?php foreach($final_array as $key=>$val){?>
<h1><?php echo $key;?></h1>
<?php foreach($val as $v){?>
<p><?php echo $v["prod_desc"];?></p>
<a href=""><?php echo $v["prod_name"]; ?></a>
<?php echo $row["quantity"]; ?>
<?php echo $row["buy_price"]."<br><br>"; ?>
<?php } ?>
<?php } ?>
<?php }?>
尝试存储上次使用的类别,并检查其是否更改:
<?php $category=''; if(mysqli_num_rows($result) > 0) { while($row = mysqli_fetch_array($result)) { if($category!=$row["name"]) { ?> <h1><?php echo $row["name"];?></h1> ?> } $category=$row["name"]; <?php <p><?php echo $row["prod_desc"];?></p> <a href=""><?php echo $row["prod_name"]; ?></a> <?php echo $row["quantity"]; ?> <?php echo $row["buy_price"]; ?> <?php } } ?>
切记在SQL查询中按类别对输出数据进行排序
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.