Php 对于每个用户都必须填写很多复选框的表单,我应该使用什么样的数据库结构?

Php 对于每个用户都必须填写很多复选框的表单,我应该使用什么样的数据库结构?,php,mysql,forms,webforms,Php,Mysql,Forms,Webforms,提前感谢大家帮助刚接触web开发的人 对于我的第一个项目,一个非常大和复杂的表单让我有点不知所措。表单的几个部分向用户显示了大量复选框,要求用户选择适用于他们的健康状况。某些健康状况出现在表格的多个此类部分中 我应该用条件表和交集表将其构造为多对多关系吗?或者这是一对多的用户,因为每个用户只需填写每个部分一次?如果是后者,我只能创建一个带有userID和conditionName的表,但是一些conditionName会出现几次 如果您认为应该是多对多关系,那么将至少100个健康状况输入健康状况

提前感谢大家帮助刚接触web开发的人

对于我的第一个项目,一个非常大和复杂的表单让我有点不知所措。表单的几个部分向用户显示了大量复选框,要求用户选择适用于他们的健康状况。某些健康状况出现在表格的多个此类部分中

我应该用条件表和交集表将其构造为多对多关系吗?或者这是一对多的用户,因为每个用户只需填写每个部分一次?如果是后者,我只能创建一个带有userID和conditionName的表,但是一些conditionName会出现几次


如果您认为应该是多对多关系,那么将至少100个健康状况输入健康状况表(conditionID、conditionName)的最佳方式是什么?

您对交叉表的想法是正确的:

User Table
----------
userId (PK, AI)
...

Condition Table
----------
conditionId (PK, AI)
name
...

UserCondition
----------
userConditionId (PK, AI)
userId (FK)
conditionId (FK)

UserCondition表有自己的自动递增主键。如果需要,您可以多次向同一用户添加相同的条件。

向数据库中添加行应该非常简单,请查阅首选数据库管理系统的文档。如果出于任何原因,这对您都不起作用,那么创建一个web表单插入到表中。这对您来说是一个很好的实践。正如我在上面所问的,如何存储用户选择的任何条件@马特:我知道如何使用phpMyAdmin添加行,但要为100个条目添加行,真是一件痛苦的事。我想知道是否有更快的方法。