我对部分代码有问题,其中通过 foreach 遍历数组,满足特定条件的数组由 UPDATE 值更新。问题是我尝试通过隐藏输入传递值并且只更新最后一个值。如何修改代码以便我可以使用数组来完成?
try {
$add = "UPDATE calculo SET puntaje_fecha=:puntaje_fecha WHERE id_calculo=:id_calculo";
$d = $conn->prepare($add);
$d->bindParam(':puntaje_fecha', $_POST['puntaje_fecha']);
$d->bindParam(':id_calculo', $_POST['id_calculo']);
$d->execute();
} catch (PDOException $e) {
die("Error: " . $e->getMessage() . "<br>on line: " . $e->getLine() . "<br>on file: " . $e->getFile());
}
<form action="actualizar.php" method="post">
<?php foreach ($ca as $c){?>
<?php foreach ($pr as $p) {}?>
<?php if (($p['id_fecha'])==($c['nFecha'])){
//actions to be taken if the conditions are met
}?>
<input type="hidden" name="puntaje_fecha" value="<?php echo $s; ?>">
<input type="hidden" name="id_calculo" value="<?php echo $c['id_calculo']; ?>">
<?php }} ?>
<input type="submit" value="Actualiza puntos">
</form>
我需要的是,在我的“calculo”表中,只要满足该条件,就会更新“puntaje_fecha”的所有值。很多人推荐我改用数组输入的名称,但是我不知道怎么做。非常感谢任何可以帮助我的人。