【发布时间】:2016-06-20 00:55:46
【问题描述】:
我有这个问题,我有一个“产品表”,它包含产品描述、价格、类别、子类别和其他几行。
我有这个 php 块,它应该检索和回显带有类别和子类别的动态手风琴并修剪重复项。
我觉得我很近,但我可能在几英里之外..
<?php
$sql = mysql_query("SELECT DISTINCT category FROM products");
while($row = mysql_fetch_array($sql)) {
$category = $row['category'];
$sql2 = mysql_query("SELECT DISTINCT subcategory FROM products WHERE category = '$category'");
while($row = mysql_fetch_array($sql2)) {
$subcategory = $row['subcategory'];
echo '<h3><a href="#">'.$category.'</a></h3>
<div>
<p><a href="#">'.$subcategory.'</a></p>
</div>';
}}
?>
问题是我得到了重复的类别..
【问题讨论】:
-
通过你自己的代码,一个给定的分类可以有多个子分类,每个子分类可能出现同一个父分类。您想在这里实现什么目标?
-
是的,我怕我解释得不好..每个类别一次,子类别在..下又一次..
-
请stop using
mysql_*functions。 These extensions 已在 PHP 7 中删除。了解PDO 和 MySQLi 的 prepared 语句并考虑使用 PDO,it's really pretty easy。 -
@TimBiegeleisen 是的,我担心我没有解释清楚.. 每个类别一次,子类别下.. 再一次..
-
我很难说这是 SQL 问题还是 PHP 代码表示层的问题。