将大型数组传递给PHP的最佳方法

时间:2013-08-30 18:20:16

标签: php json url

我正在尝试找到将大量ID从一个页面传递到下一个页面的最佳方法。

我构建了一个简单的可下载图像站点,允许用户选择要下载的任意数量的图像。现在,当用户选择图像时,其ID存储在cookie内的JSON字符串中。我遇到的问题是在下载页面之前找到将JSON传递给评论的最佳方法。

目前,我正在发送JSON作为URL参数,但我不确定这是否是最智能的解决方案,因为JSON中的ID数量可能达到数百个。

我查看了PHP会话,但我真的不明白如何在页面加载后启用用户添加/减去变量的功能。

$(function(){
$('.download_cart').click(function(){
    var urlArray = [];
    obj = JSON.parse(getCookie("downloads"));
        if(obj != null){
            if(obj.items.length !== 0){
                $.each( obj.items, function( i, value ) {
                    urlArray.push(obj.items[i].id);
                }); 
            }
        }                           
    window.location = cart_url+'?array='+urlArray;
})
});

3 个答案:

答案 0 :(得分:1)

尝试POST将数据发送到新的PHP页面:

var data = 'urlArray='+urlArray
$.ajax({
  type: "POST",
  url: 'new_php_page.php',
  data: data
});

现在,您可以在新页面的$_POST['urlArray']处获取变量。

http://api.jquery.com/jQuery.post/

答案 1 :(得分:0)

将urlArray分配给隐藏字段然后提交表单,它可以将大数量的数组解析为另一个页面

答案 2 :(得分:0)

考虑在每个请求中通过200(例如,不溢出输入限制)ID在一组ajax请求中传递它们。