将多个数据从Android发布到PHP web服务
到目前为止,我可以从Android向PHP web服务发送一组数据。我希望发送一个数组,并在web服务中有一个for循环。可能吗?这是一个好的解决方案吗?在这个项目中,我尝试将SQLite与MySQL同步 这是我的密码将多个数据从Android发布到PHP web服务,php,android,web-services,post,http-post,Php,Android,Web Services,Post,Http Post,到目前为止,我可以从Android向PHP web服务发送一组数据。我希望发送一个数组,并在web服务中有一个for循环。可能吗?这是一个好的解决方案吗?在这个项目中,我尝试将SQLite与MySQL同步 这是我的密码 String username, userid; username = "Kate"; userid = "3"; String data = ""; try { data = URLEncoder.encode("usernam
String username, userid;
username = "Kate";
userid = "3";
String data = "";
try {
data = URLEncoder.encode("username", "UTF-8") + "="
+ URLEncoder.encode(username, "UTF-8");
data += "&" + URLEncoder.encode("userid", "UTF-8") + "="
+ URLEncoder.encode(userid, "UTF-8");
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
String text = "";
BufferedReader reader = null;
try {
URL url = new URL(
address);
URLConnection conn = url.openConnection();
conn.setDoOutput(true);
OutputStreamWriter wr = new OutputStreamWriter(
conn.getOutputStream());
wr.write(data);
wr.flush();
// Get the response
reader = new BufferedReader(new InputStreamReader(
conn.getInputStream()));
StringBuilder sb = new StringBuilder();
String line = null;
while ((line = reader.readLine()) != null) {
sb.append(line + "\n");
}
text = sb.toString();
} catch (Exception ex) {
} finally {
try {
reader.close();
} catch (Exception ex) { }
}
还有这个
<?php
include '../inc/connect.php';
include '../inc/class/mysql.class.php';
$name = urldecode($_POST['username']);
$user = urldecode($_POST['userid']);
print " ==== POST DATA =====
Name : $name
Email : $email
User : $user
Pass : $pass";
$ins = mysql_query("INSERT INTO users (UserName, FullName) VALUES ('$name','$user')") or die(mysql_error());
if ($ins) {
echo json_encode(array("result"=>"success","result_txt"=>"Branch sucessfully added."));
exit();
}
?>
您可以将输入作为JSON发送,然后让PHP对其进行解码
因此,您可以在android应用程序中对所有数据进行编码,并将其作为一个大的编码字符串发送,可能使用URI编码或Base64,然后在PHP中执行以下操作:
$data = json_decode($_POST['data']);
如果使用base64,则需要执行以下操作:
$data = json_decode(base64_decode($_POST['data']));
如果您只是将其作为一个字符串发送
$data = json_decode(urldecode($_POST['data']));