Ajax:正确发送数组到php?

时间:2016-11-23 16:50:59

标签: ajax

我填充了这样的数组:

JS

 playersDone["gk"] = "test";
 playersDone["df1"] = "test2";

我的 ajax 部分如下所示:

$.ajax({
    url:'writeDraftedTeamToDraftsDatabase.php',
    type:'post',
    data:{players: JSON.stringify(playersDone)},

    success: function (res) {                        
        alert(res);                    
    }
});

我的 php 看起来像这样:

echo $_POST['players']['gk'];

但是通过这种方式我无法正确获取我的数组元素的值!

就像你看到我已经尝试用JSON.stringify()传递数组但没有成功!

你能不能给我一个暗示我错误的地方?

非常感谢你!

1 个答案:

答案 0 :(得分:0)

好的,这是我的解决方案:

JS / AJAX

gsutil rsync

<强> PHP

var playersDone = {};  // THIS IS IMPORTANT, not var playersDone = [] becasue js works with objects not with assoc. arrays !!!

$.ajax({
            url:'writeDraftedTeamToDraftsDatabase.php',
            type:'post',
            data:{'players':playersDone},
            success: function (res) {                        
                alert(res);                        
            }
        });

编辑:一个非常好的方法是使用Firefox的webDevelopsers工具检查Ajax请求标头,因为我认识到我的请求内容是空的...;)我知道“确定空字符串是发送“在js /客户端有问题!