繁体   English   中英

PHP while循环显示类别,然后显示其下的产品

[英]PHP while loop to display categories then products under it

我正在尝试根据程序中的产品类别显示产品列表。 到目前为止,这就是我的代码:

$query = "SELECT products_name, categories_desc, id, price
        FROM products, categories
        WHERE products.categories_id = categories.categories_id";

$result = mysql_query($query);

while($row=mysql_fetch_array($result)){
    echo "<b>" . $row['categories_desc'] . "</b><br>";

    while($row=mysql_fetch_array($result)){
        echo "<input type='checkbox' name='" . $row['products_name'] . "' value='" . $row['price'] . "'>" . $row["products_name"] . "</br>";
    }
}

但是显然,我做错了。 它仅显示第一个类别,然后显示所有产品。 帮忙,有人吗? 提前致谢!

您不需要第二个循环。 这是程序中的错误。

应该是这样的:

$query = "SELECT products_name, categories_desc, id, price
        FROM products, categories
        WHERE products.categories_id = categories.categories_id";

$result = mysql_query($query);
$last_category='';
while($row=mysql_fetch_array($result)){
    if ($last_category!=$row['categories_desc']){
        echo "<b>" . $row['categories_desc'] . "</b><br>";
        $last_category=$row['categories_desc'];
    }

    echo "<input type='checkbox' name='" . $row['products_name'] . "' value='" . $row['price'] . "'>" . $row["products_name"] . "</br>";
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM