将具有多个数组的ajax数据发布到php - php

我已经成功地发布了一个序列化的数组,但是我不知道如何在AJAX帖子中发布多个数组。这是我的代码:

的HTML

<td><input type="text" name='item_name[]' id="item_name" class="form-control" autocomplete="off"></td>
<td><input type="number" name='quantity[]' id="quantity" class="form-control" autocomplete="off"></td>

jQuery的

$("#create_order").click(function(){  

    var item_name = $('[name="item_name[]"]').serialize();
    var quantity = $('[name="quantity[]"]').serialize();

    $.ajax({

        url: "includes/ajax_new_order.php",
        data: {item_name:item_name, quantity:quantity},

        type: "POST",

        success:function(data){ 

            $("#editModal").modal('hide'); 

            $('#create_order').html('<span class="glyphicon glyphicon-ok" aria-hidden="true"></span> Save');
        }
    });
});

的PHP

<?php require("../init.php");

    $item_name = $_POST['item_name'];
    $quantity = $_POST['quantity'];

    foreach (array_combine($item_name, $quantity) as $key1 => $key2) {

      $query = $database->query("INSERT INTO order_tb(item,quantity) VALUES('$key1','$key2') ");
      if ($query) {
        echo "<p>Success</p>";
      }
      else { 
        echo "<p>Failed</p>"; 
      } 
    }
?>

一个数组可以正常工作,但是当我尝试向数据中添加第二个数组数量时:字段不起作用。

php参考方案

您可以使用映射功能而不是序列化功能。这是示例代码。只需用下面的示例代码替换您的jquery代码。

$("#create_order").click(function(){  

    //var item_name = $('[name="item_name[]"]').serialize();
    //var quantity = $('[name="quantity[]"]').serialize();

    var item_name =$('[name="item_name[]"]').map(function(){return $(this).val();}).get();
    var quantity = $('[name="quantity[]"]').map(function(){return $(this).val();}).get();


    $.ajax({

        url: "includes/ajax_new_order.php",
        data: {item_name:item_name, quantity:quantity},

        type: "POST",

        success:function(data){ 

            $("#editModal").modal('hide'); 

            $('#create_order').html('<span class="glyphicon glyphicon-ok" aria-hidden="true"></span> Save');
        }
    });
});

当文本等于单选按钮的值时,选择单选按钮 - php

当下拉菜单中的文本等于值时,是否可以选择2个名称相同但值不同的单选按钮中的1个?https://paste.ee/p/2iCjA第97行我用if-else尝试过:if($('input[name="anrede"]').val() == 'Herr') { $("#Herr").…

在单次点击甚至点击链接时创建不同的功能 - php

我有3个链接,它们是学生的名字。第一次单击链接或奇数时间时,会出现另一个div,其中包含该学生的详细信息。在第二次或偶数时间单击同一链接时,我需要隐藏学生div。使用jquery的data()事件对我来说效果很好。我的要求是,如果我单击第一个学生链接,则会显示第一个学生的详细信息。如果单击第二个学生链接,则会显示第二个学生的详细信息。如果再次单击第一个链接,…

将DataTables中的aoData数组与序列化形式组合 - php

我正在使用jquery数据表,并希望将aoData与使用jquery的表单序列化数据结合起来。fnServerData: function(sSource, aoData, fnCallback,oSettings) { aoData.concat( $("#frm").serializeArray()); console.log(aoD…

如何通过Ajax将数据发送到不同的元素? - php

script.js $(document).on("click", ".send", function (event) { $.ajax({ url: "update.php", data: { id: id, }, type: "POST", success: function…

php:是否有充分的理由引用所有数组键/索引? - php

我正在遍历别人的代码,他们总是避免转义其数组键。例如:$ row_rsCatalogsItems [名称]代替$ row_rsCatalogsItems ['名称']因此,我不断地对自己接触的所有事物进行微小的更改,以应对这些惰性。但是现在我想知道这样做是否有很多好处。我得到它会在默认为字符串之前检查常量(我在处理常量时会讨厌php中的行为,因为即使未定义,…