循环访问JSON数据

时间:2011-07-17 04:16:11

标签: php jquery ajax json post

我正在构建一个图像文件名(src)和ID属性(id)

的数组
var arr = {};
$('.selection .image').each(function(index) {
    var $this = $(this),
    id = $this.children('img').attr('id'),
    src = $this.children('img').attr('src');

    arr[id] = src;
});

然后我将它发送到php脚本以执行其他一些功能。

e.g。 { “8”: “http://www.domain.com/file8.jpg”, “9”: “http://www.domain.com/file9.jpg”}

$.ajax({
    type: 'POST',
    url: 'array.php',
    data: 'array='+JSON.stringify(arr),
    dataType: 'json',
    success: function(data){
        updateContainer(data.reply);
    },
});

我在浏览php文件中的数据时遇到问题。任何人都可以帮助我吗?干杯

$json = $_POST['arr'];
$array = json_decode($json, TRUE);

1 个答案:

答案 0 :(得分:3)

你可能正在使这个变得更加复杂。 $.ajax方法将获取数据对象:

data: arr

然后,在PHP端,您将拥有以下内容:

print_r($_POST);

array(
  [8] => http://www.domain.com/file8.jpg
  ... etc ...
)

话虽如此,如果您上面的示例代码是正确的,那么您传递array的值并尝试访问它是php端的arr。如果你想用你所描述的JSON方法说,你需要$_POST['array']基于上面的代码示例。