Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
动态下拉jQuery数据库表的最佳设计_Jquery_Mysql_Codeigniter - Fatal编程技术网

动态下拉jQuery数据库表的最佳设计

动态下拉jQuery数据库表的最佳设计,jquery,mysql,codeigniter,Jquery,Mysql,Codeigniter,我有一个案例,可以使用下拉列表在我的web中创建一个页面,该列表将基于MySQL表进行动态设置。我正在使用codeigniter PHP开发它。我有这样一个表格的原型: TABLE PRINTER TONER ------------------------------------------------------------------------- | ID PRINTER | BRAND | TYPE | TONER | STOCK

我有一个案例,可以使用下拉列表在我的web中创建一个页面,该列表将基于MySQL表进行动态设置。我正在使用codeigniter PHP开发它。我有这样一个表格的原型:

TABLE PRINTER TONER
-------------------------------------------------------------------------
| ID PRINTER |  BRAND       |  TYPE              |  TONER  |    STOCK   |
-------------------------------------------------------------------------
|      1     |  HP Laserjet |   3030, 1020, 3055 | 12A     |            |
|            |              |    1200            | 15A     |            |
|            |              |    P1106           | 35A     |            |
|            |              |    PIXMAX          | 328     |            |
|            |              |    1160, 1320      | 49A     |            |
|            |              |    2015D           | 53A     |            |
|            |              |    P1102, PRO1102W | CE285A  |            |
-------------------------------------------------------------------------

TABLE PRINTER INK
--------------------------------------------------------------------------------------------
| ID PRINTER |  BRAND       |  TYPE      |  COLOR  |  BLACK | STOCK COLOR  | STOCK BLACK  |
-------------------------------------------------------------------------------------------
|      2     |  HP DESKJET  |   F2410    | HP703   | HP60   |              |              |
|            |              |   810C     | HP49    | HP20   |              |              |
|            |              |   1220C    | HP78    | HP45   |              |              |
|            |              |   840C     | HP17    | HP15   |              |              |
--------------------------------------------------------------------------------------------
我应该为一种类型逐个创建ID_打印机吗?我想在我的html中创建如下内容:

<div class="control-group">
    <label class="control-label" for="selectError">Merk Printer :</label>
    <div class="controls">
       <select id="selectError" data-rel="chosen">
           <option>Brother Inject</option>
           <option>Canon</option>
           <option>Epson Dot Matrik</option>
           <option>Epson Deskjet Inject</option>
           <option>HP Laserjet</option>
           <option>HP Deskjet</option>
           <option>HP Office Jet</option>
           <option>Konica Minolta</option>
           <option>Panasonic</option>

          </select>
         </div>
</div>

Merk打印机:
兄弟注射
原则
爱普生点矩阵
爱普生Deskjet注入
高压激光喷射
喷墨打印机
惠普办公喷气式飞机
柯尼卡美能达
松下

下拉列表的顶部是基于数据库创建层次结构下拉列表?

您应该对数据库进行规范化,以减少冗余和大小。请阅读

对于您的案例,您必须执行以下步骤: 1.将表
打印机碳粉
拆分为以下几个表:

PrinterBrands

---------------------
| id |  brandname   | 
---------------------
| 1  |  HP Laserjet | 
| 2  |  HP Colorjet |
...
打印机类型

------------------------------------
| id |  brand_id | type | toner_id |
------------------------------------
| 1  |     1     | 3030 |     1    |
| 2  |     1     | 1020 |     1    |

...
----------------------------
| id |  toner_type | stock |
----------------------------
| 1  |     12A     |   23  |
| 2  |     15A     |   12  |
...
音调类型

------------------------------------
| id |  brand_id | type | toner_id |
------------------------------------
| 1  |     1     | 3030 |     1    |
| 2  |     1     | 1020 |     1    |

...
----------------------------
| id |  toner_type | stock |
----------------------------
| 1  |     12A     |   23  |
| 2  |     15A     |   12  |
...
您可以对墨水打印机执行类似的操作。 现在,您可以设置表之间的关系并查询它们。 有了它,您可以创建打印机、品牌或任何东西的列表