I am sending a Json representation of an arraylist of custom objects to the server. I hope then to take that json object, decode into an array and retrieve the attributes and place them in MySQL. I think I am having an encoding issue. My php source code is written in notepad++ and is endcoded to utf-8. I believe Android encodes its source code and SQlite Datavabe in utf-8. The data that i use to construct the arraylist of my custom objects comes from SQLite.
When i POST a json object of my custom arraylist on the browser, the json is read successfully. However, when i send it via my android I get the error below. Someone please help?
Android code:
ArrayList<Article> list;
list = recallSharedListFromDb();
// Create json
Gson gson = new GsonBuilder().create();
String json_arrayList = gson.toJson(list);
// Build parameters.
List<NameValuePair> param = new ArrayList<NameValuePair>();
param.add(new BasicNameValuePair("jsonObj", json_object));
JSONObject json = jsonParser.makeHttpRequest(url_register_code, "POST", param);
// Read json response coming from server.
Log.d("SyncToMySQL", "json string: "+ json.toString());
Php code:
//Get JSON posted by Android Application $json = $_POST["jsonObj"]; // this works... //Decode JSON into an Array $data = json_decode($json);
$num_objects = count($data);
if($data){
$response["number of objects"] = $num_objects;
$response["success"] = 1;
echo $json. "<br><br>";;
}else{
$response["number of objects"] = 0;
$response["success"] = 0;
}
echo json_encode($response);
StackTrace:
12-31 09:54:59.966: E/JSON Parser(1826): Error parsing data org.json.JSONException: Value (STRANGE LOOKING SYMBOLS) of type java.lang.String cannot be converted to JSONObjec