我有一个包含顶部和子项目的菜单。所有的项、顶部项和子项在数据库中都有一个唯一的"id"和一个"parentid"。顶部项目,所有项目都有"parentid"0"作为值,子项目的"parentid"与它们对应的顶部项目的"id"相同。
有没有办法从数据库中选择菜单,使其在页面上看起来像这样?
顶部项目1-我自己的子项目1,我自己的个子项目2,我自己子项目3
顶部项目2-我自己的子项目1,我自己的个子项目2,我自己子项目3
顶部项目3-我自己的子项目1,我自己的个子项目2,我自己子项目3
等等。
我是数据库的新手,我尝试了一切,但都无法得到我想要的。。谢谢你的帮助!
您需要在顶部菜单和子项之间有父子关系,因此您需要在子项表中创建一个额外的列,例如main_menu_id
,完成此操作后,您需要将主菜单的id
分配给该列中的子菜单项。
稍后,您将需要一个使用PHP的嵌套while循环,并且必须相应地获取记录。
/* Loop Top Items Starts
Loop Inner Items (Fetch Sub Items Having ID Of The Main Item)
Loop Top Items Ends
*/
第一次查询
SELECT * FROM main_menu;
第二次查询(嵌套In While循环)
SELECT * FROM sub_menu WHERE main_menu_id = $looped_id;