javascript - 如何将 2D 数组从 JavaScript 传递到 PHP

标签 javascript php jquery arrays ajax

我正在开展一个学校项目,该项目涉及使用各种 API/AJAX 调用从多个在线零售商提取产品数据,然后在 PHP 中对这些数据进行排序(我对每个零售商使用一个 AJAX 调用)。我正在处理的代码片段如下所示。我不知道如何

  1. 将包含每个产品的产品属性(“平均”、“价格”、“名称”、“网址”和“图像”)的临时数组推送到主数组(数组的数组)中,然后

  2. 将此主数组发布到 PHP,以便我可以索引其中的值以进行排序。

function get_results() {
  $(document).ready(function() {
    var master_array = [];
    $.ajax({
      type: "GET",
      url: "http//:www.source1.com",
      dataType: "xml",
      success: function(xml) {
        $(xml).find('product').each(function() {
          var Average = $(this).find('Average').text();
          var Price = $(this).find('Price').text();
          var Name = $(this).find('Name').text();
          var Url = $(this).find('Url').text();
          var Image = $(this).find('Image').text();
          master_array.push([Average, Price, Name, Url, Image]);
        });
      }
    });
    $.ajax({
      type: "GET",
      url: "http//:www.source2.com",
      dataType: "xml",
      success: function(xml) {
        $(xml).find('product').each(function() {
          var Average = $(this).find('Average').text();
          var Price = $(this).find('Price').text();
          var Name = $(this).find('Name').text();
          var Url = $(this).find('Url').text();
          var Image = $(this).find('Image').text();
          master_array.push([Average, Price, Name, Url, Image]);
        });
      }
    });
  });
}

最佳答案

您应该看到 JQuery ajax 函数的示例代码:http://api.jquery.com/jquery.ajax/ 。下面是一个示例代码:

$.ajax({
  method: "POST",
  url: "some.php",
  data: { name: "John", location: "Boston" }
})
.done(function( msg ) {
    alert( "Data Saved: " + msg );
});

更新后的函数可能如下所示:

function get_results() {
  $(document).ready(function() {
    var master_array = [];
    $(xml).find('product').each(function() {
        var Average = $(this).find('Average').text();
        var Price = $(this).find('Price').text();
        var Name = $(this).find('Name').text();
        var Url = $(this).find('Url').text();
        var Image = $(this).find('Image').text();
        master_array.push([Average, Price, Name, Url, Image]);
    });
    $.ajax({
      type: "POST",
      url: "http//:www.source1.com",
      data: master_array,
      success: function(response) {
        alert('Data successfully posted');
      },
     fail: function(response) {
        alert('Data could not be posted');
      }
    });

  });
}

在上面的代码中,成功和失败是服务器返回响应时调用的函数。如果响应发送正确,则调用 success 函数。如果服务器上出现错误,则调用失败函数。

关于javascript - 如何将 2D 数组从 JavaScript 传递到 PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40571242/

相关文章:

javascript - 将 session 变量从 PHP 传递到 JS

php - 从 php 将数据插入 MySql

javascript - AngularJS $http 将原始 HTML 元素放在正文中

javascript - 自定义 amCharts 饼图中的气球文本

javascript - Cordova 中从 arraybuffer 到 blob

php - (php) mysql_fetch_array - 它如何知道要访问哪一行

javascript - 根据实际页面有条件地重写 anchor 链接

javascript - 如何使用 jQuery 在按钮按下时在文本区域中向上、向下、向左、向右移动光标?

jQuery(基本语法问题): modifying several parameters with one . css

javascript - 在浏览器控制台中获取调度的 NGRX 项目