title: Image is uploading of size 0 byte using php in android
body: <p>I m making an android app to upload the image in mysql database using php. Im saving in directory [$path = "uploads/$id.png";
  $actualpath = "<a href="http://www.bsservicess.com/photoUpload/" rel="nofollow">http://www.bsservicess.com/photoUpload/</a>$path"].</p>
  
  <p>The problem is that image is uploading to the directory but it showing the size  of image as 0 byte.
  I dont know what's the problem.It working perfectly earlier but i dont know why it uploading the size of image of 0 byte now. I try everything but nothing works. If somebody knows the solution please help me.</p>
  
  <pre><code> &lt;?php 
   if($_SERVER['REQUEST_METHOD']=='POST'){
  
      $photo= $_POST['photo'];
      $bookname=$_POST['bookname'];
              $phoneNumber=$_POST['phoneNumber'];
              $price=$_POST['price'];
  
      require_once('loginConnect.php');
  
      $sql ="SELECT id FROM images ORDER BY id ASC";
  
      $res = mysqli_query($con,$sql);
  
      $id = 0;
  
      while($row = mysqli_fetch_array($res)){
              $id = $row['id'];
      }
  
      $path = "uploads/$id.png";
  
      $actualpath = "http://www.bsservicess.com/photoUpload/$path";
  
      $sql = "INSERT INTO images (photo,bookname,phoneNumber,price) VALUES
       ('$actualpath','$bookname','$phoneNumber','$price')";
  
      if(mysqli_query($con,$sql)){
          file_put_contents($path,base64_decode($photo));
          echo "Successfully Uploaded";
      }
  
      mysqli_close($con);
    }else{
      echo "Error";
   }
  ?
  
  
   enter code here&gt; Blockquote
  
     package com.manali.vivek.userregistration;
  
     import android.app.ProgressDialog;
     import android.content.Intent;
     import android.graphics.Bitmap;``
     import android.net.Uri;
     import android.os.AsyncTask;
     import android.os.Bundle;
     import android.provider.MediaStore;
     import android.support.v7.app.ActionBarActivity;
     import android.util.Base64;
     import android.view.View;
     import android.widget.Button; 
     import android.widget.EditText;
     import android.widget.ImageView;
     import android.widget.Toast;
  
     import java.io.ByteArrayOutputStream;
     import java.io.IOException;
     import java.util.HashMap;
  
  
   public class image extends ActionBarActivity implements
    View.OnClickListener    
   {
  
     public static final String UPLOAD_URL =
      "http://www.bsservicess.com/photoUpload/uploadImage.php";
     public static final String UPLOAD_KEY = "image";
  
     private int PICK_IMAGE_REQUEST = 1;
  
     private Button buttonChoose;
     private Button buttonUpload;
     private Button buttonView;
  
     private ImageView imageView;
  
     private Bitmap bitmap;
  
     private Uri filePath;
     EditText et1,et2,et3;
  
      protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_image);
  
      buttonChoose = (Button) findViewById(R.id.buttonChoose);
      buttonUpload = (Button) findViewById(R.id.buttonUpload);
      buttonView = (Button) findViewById(R.id.buttonViewImage);
      et1=(EditText)findViewById(R.id.et1);
      et2=(EditText)findViewById(R.id.et2);
      et3=(EditText)findViewById(R.id.et3);
      imageView = (ImageView) findViewById(R.id.imageView);
  
      buttonChoose.setOnClickListener(this);
      buttonUpload.setOnClickListener(this);
      buttonView.setOnClickListener(this);
    }
  
    private void showFileChooser() {
      Intent intent = new Intent();
      intent.setType("image/*");
      intent.setAction(Intent.ACTION_GET_CONTENT);
      startActivityForResult(Intent.createChooser(intent, "Select Picture"), 
   PICK_IMAGE_REQUEST);
   }
  
   @Override
   protected void onActivityResult(int requestCode, int resultCode, Intent 
    data) {
      super.onActivityResult(requestCode, resultCode, data);
  
      if (requestCode == PICK_IMAGE_REQUEST &amp;&amp; resultCode == RESULT_OK &amp;&amp; data
     != null &amp;&amp; data.getData() != null) {
  
          filePath = data.getData();
          try {
  
              bitmap = MediaStore.Images.Media.getBitmap(getContentResolver(),   
         filePath);
              imageView.setImageBitmap(bitmap);
          } catch (IOException e) {
              e.printStackTrace();
          }
      }
     }
  
     public String getStringImage(Bitmap bmp){
      ByteArrayOutputStream baos = new ByteArrayOutputStream();
      bmp.compress(Bitmap.CompressFormat.JPEG, 100, baos);
      byte[] imageBytes = baos.toByteArray();
  
  
     String encodedImage = Base64.encodeToString(imageBytes, Base64.DEFAULT);
      return encodedImage;
     }
  
  
     private void uploadImage(){
  
  
          class UploadImage extends AsyncTask&lt;Bitmap,Void,String&gt;{
  
          ProgressDialog loading;
          RequestHandler rh = new RequestHandler();
  
          @Override
          protected void onPreExecute() {
              super.onPreExecute();
              loading = ProgressDialog.show(image.this, "Uploading Image",
           "Please wait...",true,true);
          }
  
          @Override
          protected void onPostExecute(String s) {
              super.onPostExecute(s);
              loading.dismiss();
  
           Toast.makeText(getApplicationContext(),s,Toast.LENGTH_LONG).show();
          }
  
          @Override
          protected String doInBackground(Bitmap... params) {
  
              Bitmap bitmap = params[0];
              String uploadImage = getStringImage(bitmap);
              String bookname=et1.getText().toString();
              String  phoneNumber=et2.getText().toString();
              String price=et3.getText().toString();
  
              HashMap&lt;String,String&gt; data = new HashMap&lt;&gt;();
              data.put(UPLOAD_KEY, uploadImage);
  
              data.put(Fetch.BOOK_NAME,bookname);
              data.put(Fetch.PHONE_NUMBER,phoneNumber);
              data.put(Fetch.PRICE,price);
  
  
  
              String result = rh.sendPostRequest(UPLOAD_URL,data);
  
              return result;
          }
  
      }
  
      UploadImage ui = new UploadImage();
  
      ui.execute(bitmap);
  
  
      }
  
  
  
  
  
  
  
   @Override
    public void onClick(View v) {
      if (v == buttonChoose) {
          showFileChooser();
      }
      if(v == buttonUpload){
      uploadImage();
  
      }
  
  
      if(v == buttonView){
          viewImage();
      }
    }
  
  
  private void viewImage() {
      startActivity(new Intent(image.this, Main.class));
       }
   }
  </code></pre>
  
  <blockquote>
    <p>Blockquote</p>
  </blockquote>