I need to upload some data to PHP server. I can do post with parameters:
String url = "http://yourserver";  HttpClient httpClient = new DefaultHttpClient(); HttpPost httpPost = new HttpPost(url); nameValuePairs.add(new BasicNameValuePair("user", "username")); nameValuePairs.add(new BasicNameValuePair("password", "password")); try {     httpPost.setEntity(new UrlEncodedFormEntity(nameValuePairs));     httpClient.execute(httpPost); }   I am also able to upload a file:
String url = "http://yourserver"; File file = new File(Environment.getExternalStorageDirectory(),         "yourfile"); try {     HttpClient httpclient = new DefaultHttpClient();      HttpPost httppost = new HttpPost(url);      InputStreamEntity reqEntity = new InputStreamEntity(             new FileInputStream(file), -1);     reqEntity.setContentType("binary/octet-stream");     reqEntity.setChunked(true); // Send in multiple parts if needed     httppost.setEntity(reqEntity);     HttpResponse response = httpclient.execute(httppost);     //Do something with response... }   But how can I put it together? I need to upload an image and parameters in one post. Thanks
You have to use MultipartEntity. Find online and download those two libraries: httpmime-4.0.jar and apache-mime4j-0.4.jar and then you can attach as many stuff as desired. Here is example of how to use it:
HttpPost httpost = new HttpPost("URL_WHERE_TO_UPLOAD"); MultipartEntity entity = new MultipartEntity(); entity.addPart("myString", new StringBody("STRING_VALUE")); entity.addPart("myImageFile", new FileBody(imageFile)); entity.addPart("myAudioFile", new FileBody(audioFile)); httpost.setEntity(entity); HttpResponse response; response = httpclient.execute(httpost);   and for server side you can use these entity identifier names myImageFile, myString and myAudioFile.
You must use a multipart http post, like in HTML forms. This can be done with an extra library. See the post Sending images using Http Post for a complete example.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With