使用PHP从MySQL获得动态多个下拉选项

时间:2015-03-09 16:11:19

标签: php jquery mysql

我正在尝试针对一个问题提出一些解决方案,我必须根据用户选择的选项为用户提供动态下拉菜单。

目前,我有3个表格已经规范化。

Tables

目前这适用于我的HTML选择元素,如果我选择John Doe,我会选择Paul,Kevin和Dick作为我的第二选择,如果我选择Kevin,我会将Drake和Kanye作为第三选择。< / p>

我的问题是我不想继续创建表格,因为我想在我的应用程序中添加更多层的staff_level。

我如何处理这个并使用PHP和MySQL拥有一个完全动态的表结构?

感谢您抽出宝贵时间阅读本文。

1 个答案:

答案 0 :(得分:1)

你想要一个人之间的关联表。将所有这些内容放在一个具有唯一ID的表中,如下所示:

Table Staff
id  | Name        | <Other fields>
----+-------------+----------
1   | John Doe    | 
2   | Sam Smith   | 
3   | John Johns  | 
4   | Paul Pete   | 
5   | Kevin Mayor | 
6   | Dick Ross   | 
      ...

然后关联表命名你喜欢什么 - 也许是StaffHeirarchy:

Table StaffRelationships
id | ManagerId | SubordinateId
---+-----------+--------------
*  | Null      | 1                       # Has no manager
*  | 2         | 6                       # Dick Ross is subordinate to Sam Smith

这个表应该有唯一键的id字段,但是你不必关心它是什么(它不像Staff.id字段那样用作外键),这就是为什么我放*那里 - 实际上它会是一个整数id。

我没有看到你的PHP用于从数据库中提取值,但它基本相同 - 查询关联表过滤以查找您正在寻找的经理的ID,您将获得下属的ID(您可以在员工表上JOIN获取姓名。