【问题标题】:How to make correct table for category / subcategory / sub-sub如何为类别/子类别/子子制作正确的表格
【发布时间】:2016-02-12 20:45:51
【问题描述】:

我的其他项目类别和子类别。

此时我已经通过一个单独的表来处理 cat 和子类别,如下所示:

category
  id   
  catname

subcategory
  id   
  subcat_id   
  subcat_name

在我的实际项目中,我要做的不仅仅是这样的子类别。

Internet - WebDesign - Php
Internet - WebDesign - Html
House - Garden - Machines

我该怎么做。我认为用类别,子类别,子子类别制作3个表格并不好

感谢任何建议如何做到这一点的最佳方式。

【问题讨论】:

    标签: php mysql categories


    【解决方案1】:

    为什么不做一个表: cat_id, 文本, parent_id

    如果是顶级类别,则parent_id为0,否则parent_id为父类的cat_id。如果您想要一个多语言站点,请删除 text 列并使用 cat_id、language_id、text 的单独表。

    【讨论】:

    • 谢谢你...我怎样才能在同一页面上通过一次选择显示所有类别:Internet -WebDesign - Php - Html House - Garden - Machines 对不起,我讨厌 stackoverflow 的评论字段。我无法用代码正确显示它
    • 您将需要一个函数,其中包含父 id = $variable 的选择查询。将变量默认为 0。然后在该查询中执行 foreach 循环,并在每个 cat_id 中,以 cat_id 作为新父级运行该函数以查找子级。您可以回显
      • 格式以制作列表,并使用 css 将其制作为菜单,或者您喜欢的任何内容。希望这有某种意义......
    【解决方案2】:
    1. 通常的方式是有一个父母,例如

      id 类别 parent_id


      1 猫 0

      2 黑猫 1

      3 狗 0

    2. 如果您有精心设计的类别 ID,您可以省略父 ID,例如

      id 类别


      11 只猫

      22 狗

      1133 小猫

      113352 小猫金色

    这里有一些 SQL:

    SELECT * FROM cat WHERE id LIKE '11%'; ## get all cats
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-10-14
      • 2023-03-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多