如何使用两个表创建菜单和子菜单


How to create menu and submenu using two tables?

请帮助我如何在PHP中使用这些表创建垂直菜单或子菜单。

这两个表是cat(id,cat_name,main_cat_id)main_cat(id,main_cat_name)

主分类表

id  main_category_name
1   Hotels
2   Compressors
3   Apparel & Clothing
4   Automobile
5   Car Rentals
6   Mobiles & Accessories
7   Computers & Peripherals
8   Doctors
9   Education

类别表

id  category_name   main_category_id
1   Pizza Center    1
2   2 Star Hotel    1
3   Hotel & Restaurant  1
4   5 Star Hotel    1
5   Air Compressor  2
6   Flare Nuts  2
7   Auto Accessories-Car Stereos    4
8   Automotive Parts, Components & Spares   4
9   Motorcycles, Scooters & Two Wheeler Parts   4

我鼓励事先尝试的政策适用于此。您已经布置好了数据库,这很好,但您需要打开一个文本编辑器并开始使用PHP。你可以做到!

这里的读者可以给你一个有效的答案,但这有很多缺点:

  • 首先,他们可能误解了你的需求,所以花很长时间在对你没有帮助的事情上
  • 其次,有几百万人希望人们免费为他们工作,如果我们这样做的话,我们会一直呆到世界末日
  • 最后,如果你在没有个人研究的情况下得到了一个有效的答案,你可能什么都学不到

以下是一个建议的行动计划:

  • 在您的计算机上安装WAMP/MAMP/LAMP
  • 在开发机器上的MySQL实例中设置数据库结构并测试数据
  • 编写一些PHP代码连接到数据库,并对其运行测试查询,将数据转储到网页中
  • 一旦成功,请修改查询以读取类别,使用ORDER子句将它们按正确的顺序排列
  • 现在您有足够的信息来创建菜单。使用<option>标记查找<select>标记的格式,每个标记都包含数据库中的名称。每个属性都需要一个value属性——这通常是数据库每行的id
  • <form>包裹以上内容
  • 从这里,您可以展开菜单以包含第二个级别。最简单的方法是研究<optgroup>标签——在我看来,这个标签使用得太少了。这允许您设置一个两级菜单,该菜单对用户来说是直观的,并且易于从代码中读取值

试试看?