php - PHP 中的替代 $_POST 方法在循环条件中获取按钮的值
问题描述
我是 PHP 新手,所以我需要你的帮助。
我在 web 中的表处于循环中,因此它会在我的 mySQL phpMyAdmin 数据库中获取值,直到它到达数据库表的末尾。
当按下某个按钮时,我在获取想要显示在表格中的所需值时遇到问题。一旦我按下一个按钮,它实际上会显示它的值,但是,它也显示了另一个按钮的值。
在我的结论中,我认为我的 $_POST 代码缺少某些东西或者是一个完全错误。
代码在这里:
<tr>
<?php
while($row = mysqli_fetch_assoc($query)){
$exerciseid = $row['exerciseid'];
$question = $row['question'];
$a = $row['answera'];
$b = $row['answerb'];
$c = $row['answerc'];
$correctanswer = $row['answer'];
?>
</tr>
<tr>
<td><?php echo $question?></td>
<td><button class="btn btn-primary" value="<?php echo $a?>" name="a-submit">A. <?php echo $a?></button></td>
<td><button class="btn btn-primary" value="<?php echo $b?>" name="b-submit">B. <?php echo $b?></button></td>
<td><button class="btn btn-primary" value="<?php echo $c?>" name="c-submit">C. <?php echo $c?></button></td>
<td><?php
if($_SERVER['REQUEST_METHOD'] === 'POST'){
if(isset($_POST['a-submit'])){
echo $a;
}
else if(isset($_POST['b-submit'])){
echo $b;
}
else if(isset($_POST['c-submit'])){
echo $c;
}
else{
}
}
?>
</td>
</tr>
<?php
}
?>
你认为我犯错的可能原因是什么?请帮忙
解决方案
如果我没记错的话,你所有的按钮都是单一的形式,这就是为什么当你点击任何按钮时你会得到所有按钮的值。
我不确定你为什么需要在这里发帖,因为如果你想获取按钮值,你可以简单地使用 jQuery 获取它。
检查我的示例代码。
<script src="https://code.jquery.com/jquery-3.3.1.min.js" crossorigin="anonymous"></script>
<?php
for ($i = 1; $i < 5; $i++) {
?>
<table>
<tr>
<td>Question <?php echo $i; ?></td>
<td><button class="btn btn-primary btn-answer" value="Answer 1" rel="question<?php echo $i; ?>" name="a-submit">A. Answer 1</button></td>
<td><button class="btn btn-primary btn-answer" value="Answer 2" rel="question<?php echo $i; ?>" name="b-submit">B. Answer 2</button></td>
<td><button class="btn btn-primary btn-answer" value="Answer 3" rel="question<?php echo $i; ?>" name="c-submit">C. Answer 3</button></td>
<td class="question<?php echo $i; ?>-answ"></td>
</tr>
</table>
<?php
}
?>
<script type="text/javascript">
$(document).ready(function () {
$('.btn-answer').on('click', function () {
$('.' + $(this).attr('rel') + '-answ').html($(this).val());
});
});
</script>
类“ btn-answer
”->所有答案按钮的全局类以调用jquery单击动作
rel
-> 识别问题
question<?php echo $i; ?>-answ
-> 识别答案块显示用户选择
推荐阅读
- json - JSON 规范
- sql - 当我只知道部分名称时检查是否存在临时表?
- r - R prod() 函数,但在 SQL 中,如何通过
- flutter - “FixedScrollMetrics”类型不是“PageMetrics”类型的子类型
- amazon-web-services - 允许列出 AWS S3 上的子文件夹
- java - overridePendingTransition 仅用于退出动画
- asp.net - 当前上下文中不存在名称“模型”
- tomcat - 在 apache-tomcat 中禁用了 tls1,但仍然可以连接到 openssl s_client,为什么?
- php - 我正在寻找一些简单的 PHP 代码来发送 Twilio SMS 消息(不需要框架)
- html - 带有光滑滑块的 ElevateZoom