从Servlet传递数组到PHP

时间:2013-04-16 03:39:20

标签: java php arrays servlets

我有一个从付款数据库中获取值的Servlet 恩。 SELECT * FROM PAYMENT;
ID = 1 2 3
金额= 10.00 - 20.00 - 30.00

我将它们存储在名为paymentHistoryArray的数组中。 现在我需要在paymentPage.PHP上访问它们 我不知道完成此操作的最佳方法/或循环访问这些值。 请帮忙。我遵循的示例代码使用:

response.sendRedirect("http://localhost/PHPwithDB/success_page.php" + "?id=" + id);

但这不是数组,1如何从servlet发送数组?

1 个答案:

答案 0 :(得分:0)

您可以使用AJAX或基本的帖子方法。

只需创建一个AJAX(或一个基本的POST调用),它向包含Servlet的服务器发送请求(无论是否为localhost)。

您可以在那里构建一个JSON对象,您可以将其作为响应的一部分返回。

然后,您可以使用基本for循环解析JSON对象,并根据需要使用数据。

示例(使用jQuery库):

$.ajax(
{
    type : 'post',
    url : 'folder/ServletName',
    dataType: 'json',
    contentType: 'text/plain',
    async: false,
    data : 
    {
        'request' : true
    },
    success : function(data)
    {
        var id = '';

        for(var i = 0; i < data.length; i++)
        {
            id = data[i].id;
            // Use id or other variables that you know of
        }
    },
    complete : function(data)
    {
    }
});

与coffeecsript类似的方法(略有不同)

$.ajax
     type: "POST",
     url : "folder/ServletName#
     data : JSON.stringify({"request" : true})
     dataType: "json"
     contentType: "text/plain"
     async: false
     error: (jqXHR, textStatus, errorThrown) ->
         $('#div').append "AJAX Error: #{textStatus}"
     success: (data, textStatus, jqXHR) ->
         for foo in data
              id= foo.id
              $("#div").html(id)

我希望有所帮助,我会睡觉,但明天会来看看。