Php 我试图在mysql数据库中存储复杂复选框表单的值

Php 我试图在mysql数据库中存储复杂复选框表单的值,php,jquery,mysql,forms,checkbox,Php,Jquery,Mysql,Forms,Checkbox,我有一个由多个部分组成的html表单,我想将从该表单获取的数据发送到数据库。我的问题是表单的第二步,其中有多个选项卡和多个复选框。我完全不知道如何创建这个表单的模式,因为有多个选项卡和许多复选框。我如何才能以有序的方式成功地插入每个类别的数量和项目名称,以便轻松获取每个条目的所有记录?每个部分都有一个ID(1到4),每个项目都有一个itemid 这里有一个表单链接(只是为了清楚我的意思,请检查表单的第2步)。 这是我的模式: CREATE TABLE `moving_entries` (

我有一个由多个部分组成的html表单,我想将从该表单获取的数据发送到数据库。我的问题是表单的第二步,其中有多个选项卡和多个复选框。我完全不知道如何创建这个表单的模式,因为有多个选项卡和许多复选框。我如何才能以有序的方式成功地插入每个类别的数量和项目名称,以便轻松获取每个条目的所有记录?每个部分都有一个ID(1到4),每个项目都有一个itemid

这里有一个表单链接(只是为了清楚我的意思,请检查表单的第2步)。

这是我的模式:

CREATE TABLE `moving_entries` (
  `moving_id` int(11) NOT NULL,
  `phone` varchar(15) NOT NULL,
  `full_name` varchar(100) NOT NULL,
  `email` varchar(100) NOT NULL,
  `moving_from` varchar(100) NOT NULL,
  `moving_to` varchar(100) NOT NULL,
  `type_from` varchar(100) NOT NULL,
  `type_to` varchar(100) NOT NULL,
  `living_room_items` text NOT NULL,
  `bedroom_items` text NOT NULL,
  `kichen_items` text NOT NULL,
  `other_items` text NOT NULL,
  `additional_items` text NOT NULL,
  `required _services` text NOT NULL,
  `move_date` varchar(100) NOT NULL,
  `referral_code` varchar(50) NOT NULL,
  `special_instruction` text NOT NULL,
  `created` date NOT NULL,
   PRIMARY KEY (`moving_id`);
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
下面是html代码的一部分

<tr id="id-inverter4">
  <td class="timesTData text-center" style="vertical-align: middle;" width="15%">
     <span class="opening" style="visibility: hidden;">(</span>
     <span class="digit" style="visibility: hidden">1</span>
     <span class="fa fa-times" style="visibility: hidden;"></span>
     <span class="closing" style="visibility: hidden">)</span>
   </td>
   <td class="nameTData" width="55%" style="vertical-align: middle">Inverter</td>
   <td class="minusTData text-center" style="vertical-align: middle;" width="10%" id="ms-inverter4" data-id="id-inverter4">
     <span class="fa fa-minus fa-lg" style="visibility: hidden;"></span>
   </td>
   <td class="plusTData text-center" style="vertical-align: middle;" width="10%" id="ps-inverter4" data-id="id-inverter4">
     <span class="fa fa-plus fa-lg" style="visibility: hidden;"></span>
   </td>
   <td class="checkTData" width="10%">
     <input type="checkbox" class="form-control checkBox inverter4" name="itemQuantities[]" title="Inverter" data-href="inverter4" data-tr="id-inverter4">
     <input type="checkbox" name="itemIds[]" class="inverter4" value="60" style="display: none;">
     <input type="checkbox" name="sectionIds[]" class="inverter4" value="4" style="display: none;">
   </td>

(
1.
)
逆变器

您可以创建一个通用表格,其中包含移动id、姓名、电子邮件、发件人和收件人。。。还有几张分开的桌子可以容纳这些选项,这里是step2客厅的例子,你可以为卧室、厨房和其他房间做同样的选择

CREATE TABLE `living_room` (
`moving_id` int(11) NOT NULL,
`television` int(11) NOT NULL,
`tv_stand` int(11) NOT NULL,
`dvd` int(11) NOT NULL,
`decoder` int(11) NOT NULL,
`home_theatre` int(11) NOT NULL,
`subwoofers` int(11) NOT NULL,
`settee` int(11) NOT NULL,
`centre_table` int(11) NOT NULL,
`side_stool` int(11) NOT NULL,
`centr_rug` int(11) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
在这里,我将所有选项都设置为(int),因为它们是复选框,所以无论是否选中,都可以插入1或0
在此处移动\u id与从常规表中移动\u id相同,因此您可以为当前移动\u id匹配简单选择的选项

,因为它们在第2步中的选项太多,并且没有选择的限制,我将在不同的表中将它们分开,其中行的id将移动\u id,后来,我可以很容易地匹配当前的搬家和客厅选项。我尝试创建不同的表格来保存分区id和项目id。但我仍然被卡住了。我不知道该如何进行。虽然这确实不起作用,但随着你对原始问题的评论,我能够想出一些办法。谢谢你,为此我将你的答案标记为correct@Atoms我很高兴帮助你