Php 在一页中列出每个类别标题下的产品
我有两张桌子 第一个是类别,第二个是产品。 类别表包含类别id、类别名称、类别描述。 产品表包含Php 在一页中列出每个类别标题下的产品,php,mysql,arrays,select,categories,Php,Mysql,Arrays,Select,Categories,我有两张桌子 第一个是类别,第二个是产品。 类别表包含类别id、类别名称、类别描述。 产品表包含产品id、产品名称、产品描述和类别id 我想将所有类别显示为标题,并在每个类别标题下仅列出4种相关产品 例如: Category1 Product 1, Product 2, product 3 Category 2 Product 4, product 5 我如何编写这个脚本。我是新手,请帮我试试这个: Select * from categories c left join pro
产品id、产品名称、产品描述和类别id
我想将所有类别显示为标题,并在每个类别标题下仅列出4种相关产品
例如:
Category1
Product 1, Product 2, product 3
Category 2
Product 4, product 5
我如何编写这个脚本。我是新手,请帮我试试这个:
Select * from
categories c left join products p on (p.catId = c.catId)
order by c.catId
您可以参考本教程 为此,您需要执行一个递归函数 我称之为分类树
好的,我想你的问题没问题。试试这个
$sql = "SELECT cat_id, cat_name FROM categories ";
$query = mysql_query($sql);
while($result = mysql_fetch_array($query)){
echo $result['cat_name'];
$sql1 = "SELECT * FROM products WHERE cat_id=".$result['cat_id'];
$query1 = mysql_query($sql1);
while($row = mysql_fetch_array($query1)){
echo $row['product_name'];
}
}
在Nytram的帖子的帮助下,我只是修改了代码。所以这个答案是99%要归功于纽约电车公司
$sql = "SELECT cat_id, cat_name FROM categories ";
$query = mysql_query($sql);
while($result = mysql_fetch_array($query)){
echo $result['cat_name'];
修改后的行是:
$sql1 = "SELECT * FROM products WHERE cat_id='".$result['cat_id']."' LIMIT 0,10";
然后使用相同的代码
$query1 = mysql_query($sql1);
while($row = mysql_fetch_array($query1)){
echo $row['product_name'];
}
}
它将仅显示组中的产品。但不显示每个类别标题。我需要在相关产品列表的顶部显示每个类别。您需要遍历结果。如何在产品while loop中为循环将产品数限制为4。运行循环4次。因此,您可以限制它或限制产品sql的结果(限制0,4)。与php.net保持联系。