使用php将类别和子类别显示为两列
可能重复:使用php将类别和子类别显示为两列,php,javascript,html,Php,Javascript,Html,可能重复: 如何使用php以这种格式显示类别和子类别 categories subcategories ---------- ------------- php php4 java java4 java java5 我的桌子是空的 cattitle subcattitle -------- ------------- acer php java
如何使用php以这种格式显示类别和子类别
categories subcategories
---------- -------------
php php4
java java4
java java5
我的桌子是空的
cattitle subcattitle
-------- -------------
acer
php
java
compaq java4
dell
laptop1
laptop2
“宏碁”是一个主要类别,“php”和“java”是它的子类别等等。我想用php显示这种类型的结构。而且它来自一张桌子。表名为categories
,字段为id
、parentid
和cattitle
我已经尝试过这段代码。这里有一种方法。
它要求主类别具有parent\u id
=0
SELECT sc.`cattitle` as `subcat`,
(SELECT c.`cattitle`
FROM `categories` as c
WHERE c.`id` = sc.`parent_id`) as `cat`
FROM `categories` as sc
WHERE sc.`parent_id` != 0
。。。这是另一个变体
SELECT sc.`cattitle` as `subcat`,
c.`cattitle` as `cat`
FROM `categories` as sc
LEFT JOIN `categories` as c
ON (c.`id` = sc.`parent_id`)
WHERE sc.`parent_id` != 0
如果您的表的结构是这样的,那么这将起作用:
id cattitle parent_id
1 java 0
2 java4 1
3 java5 1
4 php 0
5 php5.3 4
6 php4.3 4
我尝试了这一点,但没有给出正确的结果,并在同一行类别及其子类别上给出结果。。我想显示类别及其子类别在不同的行中。不清楚您的表是如何构造的。您在
java4
上面有java
作为子类。。。如果在上面的示例中,您将java
显示为一个“类别”,而不是“子类别”,那么这是不对的。你能澄清一下你的表结构吗?只需在mysql表3的“id”、“parentid”和“cattitle”字段中,感谢你的想法,但这不起作用,而且我也完成了这项任务,所以感谢你回复我所有的朋友。。