php - 如何跟踪来自 php echo 表单的响应
问题描述
我在 while 循环中有代码,最终会产生 30 个问题。由于它使用相同的代码迭代只是不同的变量值,因此我无法跟踪要使用 _POST 的标签。
无论如何,我是否可以存储用户在使用 while 循环时选择的所有答案?
代码:
while (counter !=0) {
echo '
<form method="post">
<input type="radio" id="answerA" name= "answerA " value="answerA" required>
<label for="answerA"> ' . $row['answerA'] . ' </label><br>
<input type="radio" id="answerB" name="answerB" value="answerB">
<label for="answerB"> ' . $row['answerB'] . ' </label><br>
<input type="radio" id="answerC" name="answerC" value="answerC">
<label for="answerC"> ' . $row['answerC'] . ' </label><br>
<input type="radio" id="answerD" name="answerD" value="answerD">
<label for="answerD"> ' . $row['answerD'] . ' </label><br>
</form>
'
;
}
解决方案
将行 ID 放在隐藏的输入中。您可以使用$_POST['id']
它来知道它是哪个问题的答案。
while (counter !=0) {
echo '
<form method="post">
<input type="radio" id="answerA-' . $row['id'] . '" name= "answer-' . $row['id'] . '" value="answerA" required>
<label for="answerA-' . $row['id'] . '"> ' . $row['answerA'] . ' </label><br>
<input type="radio" id="answerB-' . $row['id'] . '" name="answer-' . $row['id'] . '" value="answerB">
<label for="answerB-' . $row['id'] . '"> ' . $row['answerB'] . ' </label><br>
<input type="radio" id="answerC-' . $row['id'] . '" name="answer-' . $row['id'] . '" value="answerC">
<label for="answerC-' . $row['id'] . '"> ' . $row['answerC'] . ' </label><br>
<input type="radio" id="answerD-' . $row['id'] . '" name="answer-' . $row['id'] . '" value="answerD">
<label for="answerD-' . $row['id'] . '"> ' . $row['answerD'] . ' </label><br>
<input type="hidden" name="id" value="' . $row['id'] . '">
</form>
'
;
}
还有其他问题。ID 必须是唯一的,因此您应该在每个答案的 ID 中包含问题 ID。
无线电组中的所有名称都必须相同,这就是浏览器知道它们是同一问题的替代答案的方式。但是每种形式都需要有不同的广播组。因此,您应该从单选按钮名称中取出A
、和B
,但添加问题 ID。C
D
推荐阅读
- sql - T- SQL 以半小时为间隔拆分时间
- java - 由于 [no such provider: PKCS12] 无法使用路径 [file:/D:/GIT/memberservice/target/classes/server-app.p12] 加载密钥库类型 [PKCS12]
- javascript - Kotlin/JS,Gradle 插件:无法加载“@webpack-cli/serve”命令
- debugging - 无法在 uniface 调试器中打开设置窗口
- javascript - 使用数据表添加总时间
- amazon-web-services - 如何使用 Terraform 创建具有不同名称和目标文件的多个资源?
- c# - 在asp.net webforms的服务器上发布时无法上传项目文件夹数据
- python - python中的插值可以在预定义点之外使用吗?
- react-native - 反应原生 TouchableOpacity onpress 问题
- c# - 如何在三周内获得最后一个未登录的用户?