PHP和MySQL - 如何显示类别和子类别逻辑

PHP和MySQL - 如何显示类别和子类别逻辑

问题描述:

我想知道什么是使用PHP和MySQL显示所有类别和子猫和子子类别等逻辑?PHP和MySQL - 如何显示类别和子类别逻辑

一个简单的例子将是非常有益的感谢。

这是我的MySQL数据库结构。

id parent_id category       url            depth 
2 0   Arts & Ent      ?cat=arts-and-entertainment    0 
4 0   Automotive & Trans    ?cat=automotive-and-transportation   0 
6 0   Business & Finance    ?cat=business-and-finance     0 
+0

嗨,首先请详细描述您的问题..以及要显示此类别和子类别的位置..?在组合框或其他地方..? – Chandresh 2011-04-27 07:05:24

+0

什么是组合框 – sony 2011-04-27 07:06:42

+0

组合框是'' – Teneff 2011-04-27 07:11:32

查看managing hierarchical data in MySQL查询以获取您的类别的示例。尽管如此,你不会在这张平板桌上找到太多的东西,但你必须运行多个查询来获得完整的列表,以获得未知的深度。在我链接的文章中有很好的选择,所以如果可以更改数据库结构 - 我真的建议你这样做。

+0

我的表结构不好,究竟是什么错误? – sony 2011-04-27 07:33:46

+0

阅读我链接的文章。这个最简单的“邻接列表模型”在它的最上面被描述,并具有其所有的局限性。我只命名了最大的问题:如果树深度是动态的,则无法使用单个查询获得完整的类别树。还有其他问题。 – Slava 2011-04-27 07:42:02

Storing Hierarchical Data in a Database是我发现在数据库中存储分层数据的最有效方式的最佳解释。

此外,请考虑使用与ORM集成的嵌套集库,例如Propel。 (请参阅Propel中的NestedSet Behavior。)

+0

我的表格结构不好,究竟是什么错误? – sony 2011-04-27 07:34:19

+0

它与查找的速度有关。当你去写你的图书馆,打电话像“获得所有的祖先”和“数祖先”是低效的只有一个父母的ID。我感谢你的问题。我已经实现了这两种方式。左/右解决方案更容易。 – Homer6 2011-04-27 07:34:44

+0

那么最好的结构是什么? – sony 2011-04-27 07:36:19