首页 > 解决方案 > 如何使用嵌套的foreach循环获取索引的每个值并保存到数据库php

问题描述

我正在做一个在线考试,我想得到考生的答案并保存到数据库中。现在,我的所有问题和考生答案都使用名称为name=question[ ]和输入类型 checkbox name="checker[questionID]"的输入类型文本存储在数组中。这是样本结果。

问题 ID:数组([0] => 131 [1] => 132 [2] => 133 [3] => 130)

答案 ID:数组([131] => 330 [132] => 336 [133] => 339 [130] => 328)

现在我想像这样将该值保存到我的数据库中: 在此处输入图像描述

这是我的 php 代码,但它不起作用:

$selected = $_POST["checker"];
$quest_id = $_POST["question"];

foreach ($quest_id as $key => $q_id) {
 foreach ($selected as $key => $a_id) {
   $get_ans = mysqli_query($connections, "INSERT INTO taker_answer VALUES('','$q_id','$a_id')");
 }
}

请帮我。谢谢 :)

标签: phpfor-loop

解决方案


你根本不需要$_POST["question"]数组。由于您$_POST["checker"]将问题 ID 作为键,您可以简单地执行以下操作:

$selected = $_POST["checker"];

foreach ($selected as $key => $a_id) {
   $get_ans = mysqli_query($connections, "INSERT INTO taker_answer VALUES('','$key','$a_id')");
}

你就完成了。


推荐阅读