首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >用jQuery和AJAX将多维数组传递给PHP

用jQuery和AJAX将多维数组传递给PHP
EN

Stack Overflow用户
提问于 2013-08-16 13:56:33
回答 3查看 7.1K关注 0票数 2

我有jQuery代码:

代码语言:javascript
复制
$(document).ready(function() {

answers = new Array();

answers[0] = new Array();
answers[0]['question_id'] = 12;
answers[0]['answer_id'] = 32;

answers[1] = new Array();
answers[1]['question_id'] = 55;
answers[1]['answer_id'] = 132;

answers[2] = new Array();
answers[2]['question_id'] = 987;
answers[2]['answer_id'] = 1112;

$.ajax({
    type: "POST",
    url: "collect.php",
    data: {answers: answers},
    dataType: "json",
    beforeSend:function(){
        // Do something before sending request to server
    },
    error: function(jqXHR, textStatus, errorThrown){

        alert(errorThrown);
    },
    success: function(data){

        alert('success!');
    }
});

});

现在,这个应该有效吗?根据我在寻找代码示例时发现的情况,应该这样做。问题是,我不知道如何收集PHP文件中的数据。我是说,这是一个$_POST[],然后呢?如何收集$result和所有其他数据?

提前谢谢你,

卡尔·卡尔松

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-08-16 14:34:37

实际上,您从未用数据填充应答数组中的数组,它们的长度仍然是0,因为您使用的是字符串索引而不是int索引。您真正想要的是存储在数组中的对象。

代码语言:javascript
复制
answers[0] = {};
answers[0]['question_id'] = 12;
answers[0]['answer_id'] = 32;
票数 3
EN

Stack Overflow用户

发布于 2013-08-16 13:59:44

您可以使用$_POST['answers']在php页面中收集值。然后,您可以遍历该数组,对数据做任何您想做的事情。

票数 1
EN

Stack Overflow用户

发布于 2013-08-16 14:34:23

通过将Javascript更改为:

代码语言:javascript
复制
answers = {};

然后,我可以使用以下方法访问PHP中的数据:

代码语言:javascript
复制
$_POST['answers'][1]['answer_id'];

例如,或者只是循环通过它。

谢谢你的帮助,女士们先生们。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18275048

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档