使用 foreach 更新多条记录

我对部分代码有问题,其中通过 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”的所有值。很多人推荐我改用数组输入的名称,但是我不知道怎么做。非常感谢任何可以帮助我的人。


慕尼黑8549860
浏览 268回答 2
2回答
打开App,查看更多内容
随时随地看视频慕课网APP