无法从android

时间:2016-09-03 21:07:20

标签: java php android base64

我探讨了许多与此问题相关的问题,但没有解决我的问题。 我在android中发送base64编码的图像并将其发送到服务器,但编码的字符串无法到达Godaddy服务器。

我尝试了什么:

  • 编码图像到base64
  • 用PHP解码图像
  • Log.d(“showEncodedImageString”,image); //正确显示

我使用wampserver跟踪我的localhost的相同代码,它就像一个魅力。但无法将imageString发送到实时服务器。就像每当我发送这个编码的字符串时,php会以某种方式崩溃。我不知道。它应该通过返回一个echo语句,我在那里显示为错误但没有它不会回退任何东西。

Java代码:

Bitmap bitmap = ImageLoader.init().from(selectedPhoto).requestSize(1024, 1024).getBitmap();
                    String encodedImage = ImageBase64.encode(bitmap);

                    HashMap<String, String> postData = new HashMap<String, String>();
                    postData.put("image", "-" + encodedImage );

                    PostResponseAsyncTask task = new PostResponseAsyncTask(actCtx, postData, new AsyncResponse() {
                        @Override
                        public void processFinish(String s) {
                                Toast.makeText(actCtx, s, Toast.LENGTH_SHORT).show();
                                /*Picasso.with(actCtx).load(SERVER_ADDRESS + loggedInEmail + ".jpeg").into(imageProfileIv);*/
                                dialog.dismiss();
                        }

                    });
                    task.execute("http://fatappstudios.com/Webservices/Junaid/QuoteMedia/db_image_upload.php");
                    task.setEachExceptionsHandler(new EachExceptionsHandler() {
                        @Override
                        public void handleIOException(IOException e) {
                            Toast.makeText(getActivity(), "IOException", Toast.LENGTH_SHORT).show();
                        }

                        @Override
                        public void handleMalformedURLException(MalformedURLException e) {
                            Toast.makeText(getActivity(), "MalformedURLException", Toast.LENGTH_SHORT).show();
                        }

                        @Override
                        public void handleProtocolException(ProtocolException e) {
                            Toast.makeText(getActivity(), "ProtocolException", Toast.LENGTH_SHORT).show();
                        }

                        @Override
                        public void handleUnsupportedEncodingException(UnsupportedEncodingException e) {
                            Toast.makeText(getActivity(), "UnsupportedEncodingException", Toast.LENGTH_SHORT).show();
                        }
                    });

PHP代码(尝试1):

$name = $_POST["image"];

     try {
       echo $name;
     } catch(Exception $e) {
       echo 'Message: ' .$e->getMessage();
     }

PHP代码(尝试2):

$name = $_POST["image"];
     echo $name;

如果我简单地回显“abc”并发送除了encodedImage之外的任何值,它将显示abc字符串。所以我确信db正在完美连接。

请为我找到解决方案:(

P.S:暂时。我甚至将服务器上的所有文件夹权限设置为777,因此没有我认为的权限问题。

0 个答案:

没有答案