php - 用PHP更新数组中的MySQL行

原文 标签 php mysql arrays ajax foreach

我的饼干就像;

    Array
(
    [1] => 1
    [12] => 1
)


我的表格输入像;
(adet =数量,惰轮=英文ID)

<?php $postvalue = $_COOKIE['sepet'];
foreach($postvalue as $id =>$adet)
{
    echo '<input type="hidden" name="idler[]" value="'. $id. '">';
     echo '<input type="hidden" name="adet[]" value="'. $adet. '">';

} ?>


还有我的php文件;

if(isset($_POST['submit'])){
$adet = $_POST['adet'];
$idler = $_POST['idler'];

$sql = "UPDATE student SET urun_stok=:stok WHERE urun_id=:idler";
$query = $db->prepare($sql);
foreach( $idler as $key => $n ){

    $query->bindparam(':idler', $idler[$key]);
    $query->bindparam(':adet', $adet[$key]);
    $query->execute();
}


}

模态js;

Modal Confirm
*/
$(document).on('click', '.modal-confirm', function (e) {
    e.preventDefault();
    $.magnificPopup.close();

 $.ajax({
    type: "POST",
    url: "ge.php",
    cache:false,
    data: $('#modalAnim').serialize(),

});


    new PNotify({
        title: 'Success!',
        text: 'Satış Başarılı.',
        type: 'success'
    });
});


我对php有点陌生,所以我试图通过urun_stok行上的id更新我的数据库行。
所以我猜我做错了:)

最佳答案

在查询绑定参数时检查列名,如下所示更改

foreach( $idler as $key => $n ){
    $sql = "UPDATE table SET urun_stok=:adet WHERE urun_id=:idler";
    $query = $con->prepare($sql);
    $query->bindparam(':idler', $idler[$key]);
    $query->bindparam(':adet', $adet[$key]);
    $query->execute();
}

相关文章:

php - 从一个表中选择所有记录,并检查它们是否在第二个表中是公用的

php - 使用IIS,AngularJS和Laravel删除MethodNotAllowedHttpException

php - MySQL头痛,我应该还是不应该?

php - 希腊字符编码只能在HTML中使用,而不能在PHP中使用

javascript - 如何结束.empty()

javascript - 如何在Javascript中访问JSON数组

javascript - 大小为2的数组-如果其中一个元素为空,则将其设置为等于另一个

php - 从PHP中的文本中提取日期,时间和日期范围

php - 将编号列表列添加到返回的MySQL查询中

php - 如何在PHP数据库更新中使用SQL累积和