1

この質問は、同じ問題に直面したため、同じ質問から借用しています。サーバー側での画像投稿中に、画像の詳細がサーバー側に取得できませんでした。このような:

画像ファイル情報のphpサーバーへの投稿に失敗しました、useridはOKですが、画像ファイル情報は投稿できませんでした。

コードは次のとおりです。

public class UploadImageHttpPost {

String testpath="/mnt/sdcard/14111.jpg";
String url = "http://andtuts.com/uploadImage.php";

public static void sendPost(String url, String imagePath,String userId)
        throws IOException, ClientProtocolException {
     String responseBody;

    MultipartEntity entity = new MultipartEntity(
            HttpMultipartMode.BROWSER_COMPATIBLE);

    File file = new File(imagePath);
    FileBody encFile = new FileBody(file,"image/jpeg");
    entity.addPart("images", encFile);
    entity.addPart("UserId", new StringBody(userId));
    HttpPost request = new HttpPost(url);
    request.setEntity(entity);

    HttpClient client = new DefaultHttpClient();

    ResponseHandler<String> responsehandler = new BasicResponseHandler();
    responseBody = client.execute(request, responsehandler);

    if (responseBody != null && responseBody.length() > 0) {
        Log.w("TAG", "Response from image upload->" + responseBody);

    }
}

私はこのようになります:

Array
(
    [UserId] => 1
)

テストのためにphpでこれを使用している場所、マルチパートから来たもの:

$filedata = $_FILES['images'];
$f = fopen(time().".txt",'wb');
fwrite($f, print_r($_REQUEST,true));
fclose($f);

しかし、ここで欠落している部分が得られないことを意味します。マルチパートポストメソッドに欠落しているコードはありますか?上記のJavaコードを確認してください:

[images] => Array
        (
            [name] => ball.png
            [type] => image/png
            [tmp_name] => /tmp/phpiQHIXQ
            [error] => 0
            [size] => 1664972
        )

私もこのチュートリアルに従っています:[ http://www.webspeaks.in/2012/08/upload-files-from-android-to-server.html][2]

[2]: http://www.webspeaks.in/2012/08/upload-files-from-android-to-server.htmlおよびgoogledからの他の多くのファイルですが、適切な解決策を見つけることができませんでした。

4

1 に答える 1