자바 기초가 약하다 보니까 별거아닌게 너무 어렵네요. 벌써 이틀째 해결을 못하고 있습니다.


갤러리에서 선택한 이미지를 php로 올리려고 합니다. 구글링을 통해서 찾아본 예제들을 가지고 해봤는데,

이미지파일과 다른 문자열들을 보내서 DB에 저장하려는데 이미지파일이 안올라갑니다.

받는쪽 php에서 들어오는 값을 출력해보면 문자열을 잘 나오는데 이미지파일값이 없습니다.


...

Bitmap image =  Images.Media.getBitmap(getContentResolver(), data.getData());  //갤러리에서 선택한 이미지비트맵

Cursor c = getContentResolver().query(Uri.parse(data.getData().toString()), null, null, null, null);

c.moveToNext();

Image_url = c.getString(c.getColumnIndex(MediaStore.MediaColumns.DATA));   //이렇게 하니까 /mnt/sdcard/DCIM/Camera/~~~.jpg

                                                                                                            //이런식으로 절대경로랑 파일명이 나오네요.

...

ArrayList<NameValuePair> httpParams = new ArrayList<NameValuePair>();

httpParams.add(new BasicNameValuePair("req_code", "이미지를 전송합니다"));  


sendPostFile(theUrl, httpParams, Image_url);  //웹 전송 실행

...


public String sendPostFile(String url, ArrayList<NameValuePair> params, String Image_url) {

HttpClient httpClient = new DefaultHttpClient();     

HttpParams tmpParams = httpClient.getParams(); tmpParams)

HttpPost httpPost = new HttpPost(url);


File saveFile = new File(Image_url);

FileBody bin = new FileBody(saveFile);

MultipartEntity mpEntity = new MultipartEntity(HttpMultipartMode.BROWSER_COMPATIBLE);


mpEntity.addPart("upload_img", bin);

httpPost.setEntity(mpEntity);

String result = null;   //결과값을 담을 변수

        HttpResponse resp;

        HttpEntity entity = null;        

        try {

        entity = new UrlEncodedFormEntity(params, encoding);

        } catch (final UnsupportedEncodingException e) {

        throw new AssertionError(e);

        }

        

        httpPost.addHeader(entity.getContentType());

        httpPost.setEntity(entity);        

             resp = httpClient.execute(httpPost);

...

return result;

}


ㅠㅠ 어떻게 해야 할까요???