Php 将收藏按类别列出
我有两张桌子: 第一个名为“categories”的表包括:category\u id、category\u name等。 第二个名为“collections”的表包括:collection\u id、collection\u name、short\u description、category\u id等 我想在网格视图中列出它们,如下所示:Php 将收藏按类别列出,php,mysqli,Php,Mysqli,我有两张桌子: 第一个名为“categories”的表包括:category\u id、category\u name等。 第二个名为“collections”的表包括:collection\u id、collection\u name、short\u description、category\u id等 我想在网格视图中列出它们,如下所示: category_name no.1 collection_name no.1 (belong to category_name no.1) coll
category_name no.1
collection_name no.1 (belong to category_name no.1)
collection_name no.2 (belong to category_name no.1)
collection_name no.3 (belong to category_name no.1)
category_name no.2
collection_name no.1 (belong to category_name no.2)
collection_name no.2 (belong to category_name no.2)
collection_name no.3 (belong to category_name no.2)
category_name no.3
collection_name no.1 (belong to category_name no.3)
collection_name no.2 (belong to category_name no.3)
collection_name no.3 (belong to category_name no.3)
等等
项目按照字母顺序排列,如果类别中没有集合,则不会显示类别
我尝试使用Select distinct和INTERNAR join选择它们:
$sql="SELECT DISTINCT collections.category_id, collections.collection_name, categories.category_id, categories.category_name
FROM collections
INNER JOIN categories
ON collections.category_id=categories.category_id
ORDER BY categories.category_id, collections.collection_name";
$result = $mysqli->query($sql);
$row_category_id="";
if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
if (!$row_category_id==$row["category_id"]) {
echo "category: " . $row["category_name"]."<br>"."collection: " . $row["collection_name"]."<br>";
$row_category_id=$row["category_id"];
} else {
echo "collection: " . $row["collection_name"]."<br>";
$row_category_id=$row["category_id"];
}
}
} else {
echo "no result";
}
$row_category_id="";
谁能帮我一下吗?非常感谢
category_name no.1
collection_name no.1 (belong to category_name no.1)
collection_name no.2 (belong to category_name no.1)
collection_name no.3 (belong to category_name no.1)
collection_name no.1 (belong to category_name no.2)
collection_name no.2 (belong to category_name no.2)
collection_name no.3 (belong to category_name no.2)
collection_name no.1 (belong to category_name no.3)
collection_name no.2 (belong to category_name no.3)
collection_name no.3 (belong to category_name no.3)