如何在PHP中收集jquery.ajax()数据?

时间:2010-08-06 13:13:20

标签: php jquery ajax json

我将数据从javascript发送到PHP,如下所示:

$.ajax({'url': 'my.php',
        'type': 'POST',
        'data': JSON.stringify(update_data),
        'success': function(response) {
                       alert(response);
                   }
       });

使用HTTPFOX Firefox插件我在POST DATA标签中看到以下数据:

{"file_id":["1","2","3"],"description":["lala","kuku","wow!"],"tags":[["julia","paper"],["Very nice car"],[]]}

但是,如果我在my.php中print_r($_POST),我会看到一个空数组。这是为什么 ?我怎样才能收集数据?

3 个答案:

答案 0 :(得分:2)

数据必须采用name = value。

的形式

尝试...

$.ajax({'url': 'my.php',
        'type': 'POST',
        'data': 'mydata=' + JSON.stringify(update_data),
        'success': function(response) {
                       alert(response);
                   }
       });

然后你应该在$_POST['mydata']

中加入你的json字符串

然后,您需要使用json_decode来实际获取字符串中的各个值。

http://php.net/manual/en/function.json-decode.php

答案 1 :(得分:0)

您获得的回复是JSON格式。使用json_decode函数将其转换为数组。

print_r(json_decode($_POST['description'], true));

答案 2 :(得分:0)

我希望你的数据在$ HTTP_RAW_POST_DATA中。然后json_decode来理解它。