Я пытаюсь выполнить запрос в базе данных в localhost и отправить объект JSON клиенту в android. Я не смог узнать, в чем проблема в моем коде. Поэтому, пожалуйста, помогите мне в этом отношении.
Мой php-код – это тот, где im отправляет объект JSON. PHP-код
запрос выполнен успешно.
$row=mysql_fetch_array($result1); $email=$row['EM']; $pass=$row['PASS']; $post=array("email"=>$email, "pass"=>$pass); $posts[] = array("post"=>$post); //echo "SUCCESS"; header('Content-type: application/json'); echo json_encode(array("posts"=>$posts));
И на стороне android у меня этот код ниже;
HttpResponse response = doPost(url, kvPairs); String responseBody=response.toString(); String temp = EntityUtils.toString(response.getEntity()); if (temp.compareTo("SUCCESS")==0) { Toast.makeText(this, "Working", Toast.LENGTH_LONG).show(); }
Выполняется над частью. Ниже кода выбрасывается исключение JSON
JSONObject json = new JSONObject(responseBody); JSONArray jArray = json.getJSONArray("posts"); no_of_obj=jArray.length(); nemail=new String[no_of_obj]; npass=new String[no_of_obj]; for (int i = 0; i < jArray.length(); i++) { JSONObject e = jArray.getJSONObject(i); String s = e.getString("post"); JSONObject jObject = new JSONObject(s); Toast.makeText(context,jObject.getString("email")+":"+jObject.getString("pass") , duration).show(); nemail[i]=jObject.getString("email"); npass[i]=jObject.getString("pass"); }
В log cat я вижу: строка json должна начинаться с "{" ….