Javascript 非数字动态输入字段名称的解决方案
我有学生、学生、科目和成绩表 学生桌Javascript 非数字动态输入字段名称的解决方案,javascript,php,html,mysql,database-design,Javascript,Php,Html,Mysql,Database Design,我有学生、学生、科目和成绩表 学生桌 | id | name | |----|-------| | 1 | John | | 2 | Sara | | 3 | Smith | 主题表 | id | name | |----|-------------| | 1 | Science | | 2 | Mathematics | | 3 | English | 学生主题表 | id | student_id | subject_id | |----|
| id | name |
|----|-------|
| 1 | John |
| 2 | Sara |
| 3 | Smith |
主题表
| id | name |
|----|-------------|
| 1 | Science |
| 2 | Mathematics |
| 3 | English |
学生主题表
| id | student_id | subject_id |
|----|------------|------------|
| 1 | 1 | 1 |
| 2 | 1 | 2 |
| 3 | 2 | 1 |
| 4 | 3 | 1 |
结果表
| id | student_subject_id | result |
|----|--------------------|--------|
| 1 | 1 | 45 |
| 2 | 2 | 25 |
| 3 | 3 | 65 |
| 4 | 4 | 45 |
有单独的表格插入学生(选择科目)、科目和结果。我在创建表单为学生添加结果时遇到问题
表单由表单输入组成,列出了学生输入结果的所有科目。对于特定学生,插入结果的表单可能如下所示(在循环学生主题之后)。name属性包含Student_subject表id值。我将名称添加到此值中,因为在数据库中,我需要对数据库中的student_subject表进行引用
<form>
<input type="text" class="form-control" name="1" required>
<input type="text" class="form-control" name="2" required>
</form>
我想知道这种方法是正确的还是错误的,以增加学生的结果?
如果没有,我必须在数据库和表单中做哪些更改。输入名称是输入的名称,而不是值。Greg Schmidt,如果没有,我如何在数据库中获得引用?您需要将ID放入隐藏输入中,并将值设置为ID,您需要命名所有输入,以便它们以数组的形式出现,类似于。
。用[1]
等替换第二个和后续主题的[0]
。我不确定使用单独的结果表有什么好处;我会在student_subject表中包含result列,当结果未知时默认为null。