Форум программистов, компьютерный форум CyberForum.ru

Не читается JSON: "Error parsing data" - Android

Восстановить пароль Регистрация
 
molniya101
0 / 0 / 0
Регистрация: 11.04.2015
Сообщений: 1
11.07.2015, 22:39     Не читается JSON: "Error parsing data" #1
Здравствуйте!
Очень долго пытаюсь решить этот вопрос. Нашёл много тем и попробовал много способов. Ничего не помогло.
На основе http://devcolibri.com/1486 и http://devcolibri.com/1548 сделал сервер и клиент.
При попытке создать пользователя происходит следующие: запись в БД происходит, а приложение зависает.

Выдаёт 07-11 19:13:52.226: E/JSON Parser(2902): Error parsing data org.json.JSONException: Value ?»??»??»?<!--error--><br of type java.lang.String cannot be converted to JSONObject

Вместо ? там i с двумя точками и перевёрнутые ?.

Вот коды.

create_user.php

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<?php
 
$response = array();
 
if (isset($_POST['number']) && isset($_POST['password'])) {
 
    $name = $_POST['name'];
    $age = $_POST['age'];
    $number = $_POST['number'];
    $email = $_POST['email'];
    $car = $_POST['car'];
    $myself = $_POST['myself'];
    $password = $_POST['password'];
 
    require 'db_connect.php';
 
    $db = new DB_CONNECT();
  
    
    $result = mysql_query("INSERT INTO users(name, age, number, email, car, myself, password) VALUES('$name', '$age', '$number', '$email', '$car', '$myself', '$password')");
    
 
    if ($result) {
        $response["success"] = 1;
        $response["message"] = "User successfully created.";
 
        echo json_encode($response);
    } else {
        $response["success"] = 0;
        $response["message"] = "Oops! An error occurred.";
 
        echo json_encode($response);
    }
} else {
    $response["success"] = 0;
    $response["message"] = "Required field(s) is missing";
 
    echo json_encode($response);
}
?>

reg_activity.java

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
<?php
 
 
$response = array();
 
if (isset($_POST['number']) && isset($_POST['password'])) {
 
    $name = $_POST['name'];
    $age = $_POST['age'];
    $number = $_POST['number'];
    $email = $_POST['email'];
    $car = $_POST['car'];
    $myself = $_POST['myself'];
    $password = $_POST['password'];
 
    require 'db_connect.php';
 
    $db = new DB_CONNECT();
  
    
    $result = mysql_query("INSERT INTO users(name, age, number, email, car, myself, password) VALUES('$name', '$age', '$number', '$email', '$car', '$myself', '$password')");
    
 
    if ($result) {
        $response["success"] = 1;
        $response["message"] = "User successfully created.";
 
        echo json_encode($response, JSON_UNESCAPED_UNICODE);
    } else {
        $response["success"] = 0;
        $response["message"] = "Oops! An error occurred.";
 
        echo json_encode($response, JSON_UNESCAPED_UNICODE);
    }
} else {
    $response["success"] = 0;
    $response["message"] = "Required field(s) is missing";
 
    echo json_encode($response, JSON_UNESCAPED_UNICODE);
}
?>
JSONParser.java

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
package ru.map;
 
import android.util.Log;
 
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.client.utils.URLEncodedUtils;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.protocol.HTTP;
import org.json.JSONException;
import org.json.JSONObject;
 
import java.io.*;
/*import java.net.URL;
import java.nio.charset.Charset;*/
import java.util.List;
 
public class JSONParser {
 
    static InputStream is = null;
    static JSONObject jObj = null;
    static String json = "";
 
    // constructor
    public JSONParser() {
 
    }
 
    // метод получение json объекта по url
    // используя HTTP запрос и методы POST или GET
    public JSONObject makeHttpRequest(String url, String method, List<NameValuePair> params) {
 
        // Создаем HTTP запрос
        try {
 
            // проверяем метод HTTP запроса
            if(method == "POST"){
                DefaultHttpClient httpClient = new DefaultHttpClient();
                HttpPost httpPost = new HttpPost(url);
                httpPost.setEntity(new UrlEncodedFormEntity(params, "utf-8"));
 
                HttpResponse httpResponse = httpClient.execute(httpPost);
                HttpEntity httpEntity = httpResponse.getEntity();
                is = httpEntity.getContent();
 
            }else if(method == "GET"){
                DefaultHttpClient httpClient = new DefaultHttpClient();
                String paramString = URLEncodedUtils.format(params, "utf-8");
                url += "?" + paramString;
                HttpGet httpGet = new HttpGet(url);
 
                HttpResponse httpResponse = httpClient.execute(httpGet);
                HttpEntity httpEntity = httpResponse.getEntity();
                is = httpEntity.getContent();
            }
 
        } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
        } catch (ClientProtocolException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
 
        try {
            BufferedReader reader = new BufferedReader(new InputStreamReader(is, "iso-8859-1"), 8);
            StringBuilder sb = new StringBuilder();
            String line = null;
            while ((line = reader.readLine()) != null) {
                sb.append(line + "\n");
            }
            is.close();
            json = sb.toString();
        } catch (Exception e) {
            Log.e("Buffer Error", "Error converting result " + e.toString());
        }
 
        // пытаемся распарсить строку в JSON объект
        try {
            jObj = new JSONObject(json);
        } catch (JSONException e) {
            Log.e("JSON Parser", "Error parsing data " + e.toString());
        }
 
        // возвращаем JSON строку
        return jObj;
 
    }
    
 
}
После записи в БД программа зависает, а Eclipse перекидывает в файл ThreadPoolExecutor.class на место:

Java
1
2
3
4
5
    final void runWorker(Worker w) {
        Thread wt = Thread.currentThread();
        Runnable task = w.firstTask;
        w.firstTask = null;
        w.unlock(); // allow interrupts
Конкретно на w.unlock(); // allow interrupts.

Помогите пожалуйста, не одну неделю бьюсь. Одно время работало, потом перестало и ни в какую.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.07.2015, 22:39     Не читается JSON: "Error parsing data"
Посмотрите здесь:

Авторизация на сайте: "java.lang.Exception: http error : 401" Android
Json Parsing Android
Android Ошибка "Error opening trace file: No such file or directory (2)"
Android Осуществить парсинг JSON с помощью готового макета "VKApiMessage"
Почему приложение может пропасть из "Похожие" топового приложения? Android
Android Как поместить surfaceview или glsurfaceview на "пол" экрана
Android "Attempt to re-open an already-closed object" при работе с SQLite
Notification вывод строки с символами перехода на новую строку "\n" Android
Cache JSON Data Android
При компиляции вылазит ошибка Installation error: "INSTALL_FAILED_CPU_ABI_INCOMPATIBLE" Android
Услуга - "поругайте мой код" есть тут такая?) Android
"Error while reading RSS" при попытке загрузить новости Android

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 00:00. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru