【发布时间】:2018-09-01 18:23:52
【问题描述】:
使用下面给定的代码,我试图从 MySQL 数据库中获取复选框的数据,但它不起作用并且只获取最后一个选中的值。
var_dump($checked); 给出正确的结果。
PHP 脚本
$group_id = $_POST['group_id'];
$team_id = $_POST['team_id'];
if(!empty($_POST['team_id'])) {
foreach($_POST['team_id'] as $checked) {
// var_dump($checked);
$sql = $db->prepare("SELECT a.team, a.player, a.result, a.note, b.category FROM teams a INNER JOIN groups b ON a.team_id = b.id WHERE a.team_id = :team_id_id AND a.group_id = :group_id ");
$sql->execute(array(':team_id' => $checked, ':group_id' => $group_id));
}
while($row = $sql->fetch(PDO::FETCH_ASSOC) ) {
$row1[] = $row;
}
}
【问题讨论】:
-
你能在你定义
$row1的地方加上你读出来的代码部分吗?我猜你会想要将while循环移动到foreach中。现在$sql变量可能未在您的while语句中定义 -
@jrswgtr 我是通过ajax获取数据的,分享一堆代码对我来说有点困难。
-
那我怀疑我们能不能帮到你
-
@jrswgtr 好的!我正在努力。
-
因为在你的 foreach 中发送最后一个值。你在 foreach 中尝试过 while 循环吗?
标签: php mysql checkbox foreach