需要使用php/mysql为自定义LMS构建n级树结构菜单


Need to build N-level Tree Structure Menu for Custom LMS using php/mysql

谁能帮我索引亲子层次菜单像

基本上,我正在创建一个个人的lms。

Main (K-12,NCERT)
->Class (Class 3,Class 4,Class 5)
->Subject (Physics,Chemistry)
->Units (Unit 1,Unit 2)
->Chapter (Chap 1, Chap 2)
->Topic (Topic 1, Topic 2)
->Sub Topic (Sub Top 1, Sub Top 2)
->Sub Sub Topic (Sub Sub Top 1, Sub Sub Top 2)

每个主题都有自己的标题和内容(文本,swf,质量检查状态)


- NCERT   
       Class 5   
       Class 6
       Class 6_Physics
         Class 6_Physics_Unit 4
           Class 6_Physics_Unit 4_Chapter 1
           Class 6_Physics_Unit 4_Chapter 2
             Class 6_Physics_Unit 4_Chapter 2_Topic 1
             Class 6_Physics_Unit 4_Chapter 2_Topic 2
             Class 6_Physics_Unit 4_Chapter 2_Topic 3
                --Class 6_Physics_Unit 4_Chapter 2_Topic 3_Sub Topic 1
             Class 6_Physics_Unit 4_Chapter 2_Topic 4
           Chapter 3
         Unit 5
       Class 6_Chemistry
       Class 6_Biology   Class 7   Class 8
       Class 8_Physics
         Class 8_Physics_Unit 1
       Class 8_ Chemistry
       Class 8_Biology
         Class 8_Biology_Unit 4
         Class 8_Biology_Unit 5

1
2
3
3.1
3.1.1
3.1.1.1
3.1.1.1.1
3.2
3.3
4
5
...
...
n

谢谢赛义德

如果你问的是最好的数据库模式,那么创建一个主题表:

|COLUMN NAME    |DATA TYPE
|---------------|-----------------------------------------------------
|id             | unsigned int, auto-increment, Primary Key, not null
|parent_id      | unsigned int, not null
|title          | varchar(size-as-appropriate)
| ...           |  ... and so on

所以每条记录都有一个唯一的id。如果parent_id0,则它是顶级项,否则它是id等于给定parent_id的任何记录的子记录。

查找孩子/父母的查询应该很容易算出来。

如果你想使用MySQL做一些严肃的事情,那么我建议你对关系数据库的设计和规范化做一些研究。