1

我无法使用 android 中的多部分实体将 JSONArray 字符串发送到 php 服务器。我试过以下但它不起作用:

MultipartEntity entity = new MultipartEntity(HttpMultipartMode.BROWSER_COMPATIBLE,BOUNDARY,Charset.defaultCharset());
entity.addPart("invite_friend", new StringBody(friendsArray));

在 PHP 服务器端它应该是这样的:

'invite_friend' => array
    (
        0 => '800'
        1 => '794'
    )

有什么办法,请提供建议。

4

2 回答 2

1

你可以做这样的事情。

// Prepare Category Array
for (String mFrndsID : friendsArray) {
    reqEntity.addPart("invite_friend[]", new StringBody(mFrndsID));
}

只需在其中的循环中添加带有数组标签和 paas 值的 [] 即可。这里的invite_friend 是数组标签。您可以使用循环在此标签中传递您的值。它将作为数组发布在服务器上。

有关详细信息,请参阅此答案

如何使用 post 方法将一个关键字中的值的字符串数组发送到服务器

这可能会帮助你

于 2014-06-18T06:35:02.190 回答
0

尝试使用此代码将多个值对发送到服务器端脚本。

String strUrl = "http://****/****.php";
url = new URL(strUrl);

HttpURLConnection connection = (HttpURLConnection) url
        .openConnection();
connection.setRequestMethod("POST");
connection.setDoOutput(true);
OutputStreamWriter outputStreamWriter = new OutputStreamWriter(
        connection.getOutputStream());

outputStreamWriter.write("user_names_giver=" +user_names_giver + "&tcredit="+tcredit+"&user_name_receiver="+user_name_receiver);                
outputStreamWriter.flush();
outputStreamWriter.close();

InputStream iStream = connection.getInputStream();
BufferedReader reader = new BufferedReader(new
InputStreamReader(iStream));

StringBuffer sb = new StringBuffer();

String line = "";

while( (line = reader.readLine()) != null)
{
    sb.append(line);
}

reader.close();
iStream.close();
于 2014-06-18T08:08:04.663 回答