我正在使用以下任务使用php将多个图像从Android设备上传到服务器。
@Override
protected String doInBackground(String... params) {
try {
String url = "http://aerialssnip.com/multipleupload.php/";
int i = Integer.parseInt(params[0]);
Bitmap bitmap = decodeFile(map.get(i));
HttpClient httpClient = new DefaultHttpClient();
HttpContext localContext = new BasicHttpContext();
HttpPost httpPost = new HttpPost(url);
entity = new MultipartEntity();
ByteArrayOutputStream bos = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.JPEG, 100, bos);
byte[] data = bos.toByteArray();
httpPost.setEntity(entity);
HttpResponse response = httpClient.execute(httpPost,
localContext);
sResponse = EntityUtils.getContentCharSet(response.getEntity());
System.out.println("sResponse : " + sResponse);
} catch (Exception e) {
if (dialog.isShowing())
dialog.dismiss();
Log.e(e.getClass().getName(), e.getMessage(), e);
}
return sResponse;
}
在android端和服务器端上传图像时没有任何错误。但是,上传的图像是0字节,它们没有任何数据,我无法查看它们。 php脚本
<?php
$name = $_POST["name"];
$image = $_POST["IMAGE"];
$decodedImage = base64_decode("$image");
file_put_contents($path,$decodeImage);
?>
有谁知道我的代码中可能出现的问题?任何帮助将不胜感激。提前谢谢。
答案 0 :(得分:0)
我猜这可能只是一个错字
而不是
file_put_contents($path,$decodeImage);
你可能意味着
file_put_contents($path,$decodedImage);