0

Now I can only upload text to MySQL server.

DBcontrooler.java //My SQLite.

public String composeJSONfromSQLite(){
    ArrayList<HashMap<String, String>> wordList;
    wordList = new ArrayList<HashMap<String, String>>();
    String selectQuery = "SELECT  * FROM home where udpateStatus = '"+"no"+"'";
    SQLiteDatabase database = this.getWritableDatabase();
    Cursor cursor = database.rawQuery(selectQuery, null);
    if (cursor.moveToFirst()) {
        do {
            HashMap<String, String> map = new HashMap<String, String>();
            map.put("idhome", cursor.getString(0));
            map.put("mprefix", cursor.getString(1));
            map.put("name", cursor.getString(2));
            map.put("address", cursor.getString(3));
            map.put("district", cursor.getString(4));
            map.put("amphoe", cursor.getString(5));
            map.put("mprovince", cursor.getString(6));
            map.put("community", cursor.getString(7));
            map.put("lat", cursor.getString(8));
            map.put("longt", cursor.getString(9));
            map.put("user", cursor.getString(10));
            map.put("cb1", cursor.getString(11));
            map.put("cb2", cursor.getString(12));
            map.put("cb3", cursor.getString(13));
            map.put("cb4", cursor.getString(14));
            map.put("cb5", cursor.getString(15));
            map.put("cb6", cursor.getString(16));
            map.put("cb7", cursor.getString(17));
            map.put("cb8", cursor.getString(18));
            map.put("cb9", cursor.getString(19));
            map.put("cb10", cursor.getString(20));
            map.put("cb11", cursor.getString(21));
            map.put("cb12", cursor.getString(22));
            map.put("cb13", cursor.getString(23));
            map.put("cb14", cursor.getString(24));
            map.put("cb15", cursor.getString(25));
            map.put("cb16", cursor.getString(26));
            map.put("cb17", cursor.getString(27));
            map.put("cb18", cursor.getString(28));
            map.put("cb19", cursor.getString(29));
            map.put("cb20", cursor.getString(30));
            map.put("cb21", cursor.getString(31));
            map.put("cb22", cursor.getString(32));
            map.put("cb23", cursor.getString(33));
            map.put("cb24", cursor.getString(34));
            map.put("cb25", cursor.getString(35));
            map.put("cb26", cursor.getString(36));
            map.put("cb27", cursor.getString(37));
            map.put("cb28", cursor.getString(38));
            map.put("cb29", cursor.getString(39));
            map.put("cb30", cursor.getString(40));
            map.put("cb31", cursor.getString(41));
            map.put("cb32", cursor.getString(42));
            map.put("cb33", cursor.getString(43));
            map.put("cb34", cursor.getString(44));
            map.put("sug", cursor.getString(45));
            map.put("img1", cursor.getString(46));//imagepath
            map.put("img2", cursor.getString(47));//imagepath
            map.put("img3", cursor.getString(48));//imagepath
            map.put("img4", cursor.getStrin(49)); //imagepath
            wordList.add(map);
        } while (cursor.moveToNext());
    }
    database.close();
    Gson gson = new GsonBuilder().create();
    //Use GSON to serialize Array List to JSON
    return gson.toJson(wordList);
}

Example path content:/com.android.providers.media.documents/document/image%3A20100

MainActivity.java //To upload

public void syncSQLiteMySQLDB(){
    AsyncHttpClient client = new AsyncHttpClient();
    RequestParams params = new RequestParams();
    ArrayList<HashMap<String, String>> userList =  controller.getAllUsers();
    if(userList.size()!=0){
        if(controller.dbSyncCount() != 0){
            prgDialog.show();
            params.put("home3JSON", controller.composeJSONfromSQLite());
            client.post("http://homeclean.xp3.biz/insertuser.php",params ,new AsyncHttpResponseHandler() {
                @Override
                public void onSuccess(String response) {
                    System.out.println(response);
                    prgDialog.hide();
                    try {
                        JSONArray arr = new JSONArray(response);
                        System.out.println(arr.length());
                        for(int i=0; i<arr.length();i++){
                            JSONObject obj = (JSONObject)arr.get(i);
                            System.out.println(obj.get("id"));
                            System.out.println(obj.get("status"));
                            controller.updateSyncStatus(obj.get("id").toString(),obj.get("status").toString());
                        }
                        Toast.makeText(getApplicationContext(), "DB Sync completed!", Toast.LENGTH_LONG).show();
                    } catch (JSONException e) {
                        // TODO Auto-generated catch block
                        Toast.makeText(getApplicationContext(), "Error Occured [Server's JSON response might be invalid]!", Toast.LENGTH_LONG).show();
                        e.printStackTrace();
                    }
                }

Exmaple uploaded

phpmyadmin

I don't have any idea how to do this now.Please help me in this.

I used code from

http://programmerguru.com/android-tutorial/how-to-sync-sqlite-on-android-to-mysql-db/

Swr7der
  • 849
  • 9
  • 28
HiRes Bank
  • 11
  • 3

1 Answers1

0

First, you should save your image to a variable:

File imgFile = new  File("/sdcard/Images/test_image.jpg");

if(imgFile.exists()){

    Bitmap myBitmap = BitmapFactory.decodeFile(imgFile.getAbsolutePath());

    ImageView myImage = (ImageView) findViewById(R.id.imageviewTest);

    myImage.setImageBitmap(myBitmap);

}

And include this permission in the manifest file:

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

And then upload it according to this video: https://www.youtube.com/watch?v=4LCnoVqQ6N4

javad
  • 833
  • 14
  • 37