我有使用 php 和 mysql 显示条目的菜单。我想要做的是获得一份产品 list ,例如服装,然后是鞋子等等。他们大约有4种主要类型,这个值不能改变。
所以:
$query = mysql_query("SELECT * FROM products WHERE type = 'Clothing'")or die(mysql_error());
我不会循环遍历,而是重复该过程 4 次。 在此之后,我想用产品表显示每种服装的每个主要类别和子类别,以便它显示如下。
服装
主要类别 1 (1)子1 (35)子 2 (4)子3
主要类别 2 (1)子1 (35)子 2 (4)子3
鞋子
主要类别 1 (1)子1 (35)子 2 (4)子3
主要类别 2 (1)子1 (35)子 2 (4)子3
等等 我从不同的表中获取数据库中每个主要类别的列表并循环
$get_cats = mysql_query("SELECT * FROM main_cats")or die(mysql_error());
//loop through each
while($main_cat = mysql_fetch_assoc($get_cats)){
//count main cat in products
$check = mysql_real_escape_string($main_cat['cat']);
$p_main_count = mysql_query("SELECT * FROM products WHERE cats = '$check' ORDER BY cats")or die(mysql_error());
//this would get an array of each product that has that main category
}
这看起来一切都很好,但我想不出一种方法来以我需要的格式显示数据。 为此,产品表有 3 个主要列:
- 输入
- 猫(主要类别)
- sub cats(包含多个子类别的字符串1,2,4)
有没有办法选择和分组每个主要类别,然后显示和计算每个主要类别的子类别。
最佳答案
W3Schools 有一个非常好的教程,用于计算和显示 MySql 数据库条目。以下是如何尝试在表格中显示数据的片段。
<?php
$con=mysqli_connect("example.com","peter","abc123","my_db");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$result = mysqli_query($con,"SELECT * FROM main_cats");
while($row = mysqli_fetch_array($result))
{
echo $row['type'] . " " . $row['cats'] . " " . $row['subcats'];
echo "<br>";
}
?>
假设第 1 行的数据类型:1 猫:2 子猫:3
第 2 行的数据类型:2 猫:4 子猫:6
这将像这样输出数据
1 2 3
2 4 6
您可以轻松地使用 HTML 中的表格使它看起来更漂亮。
echo "<table border="1">";
while($row = mysqli_fetch_array($result))
{
echo "<tr><td>" . $row['type'] . "</td><td> " . $row['cats'] . "</td><td> " . $row['subcats'] . "</td>";
echo "</tr>";
}
echo "</table>";
这将以相同的顺序输出,但在表格中。
希望这对您有所帮助。另外,如果您需要任何好的引用资料 http://w3schools.com是一个非常好的网站。
关于php - 使用数据库计算和显示条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20718360/