Дополнен 8 лет назад
<?php
$res = array();
$response = array();
$response1 = array();
$response2 = array();
// include db connect class
require_once __DIR__ . '/db_connect.php';
// connecting to db
$db = new DB_CONNECT();
// get all products from products table
$result = mysql_query("SELECT * FROM dolz");
$result1 = mysql_query("SELECT * FROM otdel");
$result2 = mysql_query("SELECT * FROM spec");
if (mysql_num_rows($result) > 0 and mysql_num_rows($result1) > 0) {
$response["dolzno"] = array();
$response1["otdel"] = array();
$response2["spec"] = array();
while ($row = mysql_fetch_array($result)) {
$product = array();
$product["_id"] = $row["_id"];
array_push($response["dolzno"], $product);
$res=array_merge((array)$res, (array)$response);
}
while ($row = mysql_fetch_array($result2)) {
$product2 = array();
$product2["_id"] = $row["_id"];
array_push($response2["spec"], $product2);
$res=array_merge((array)$res, (array)$response2);
}
while ($row = mysql_fetch_array($result1)) {
$product1 = array();
$product1["_id"] = $row["_id"];
array_push($response1["otdel"], $product1);
$res=array_merge((array)$res, (array)$response1);
}
echo json_encode($res);
} else {
$response1["success"] = 0;
$response1["message"] = "No products found";
echo json_encode($response1);
}
?>
// Будет хранить параметры
List params = new ArrayList<>();
// получаем JSON строк с URL
JSONObject json = jParser.makeHttpRequest("тут ссылка на сайт", "GET", params);
try {
// Получаем масив из Продуктов
dolzno = json.getJSONArray("dolzno");
// перебор всех продуктов
for (int i = 0; i < dolzno.length(); i++) {
JSONObject c = dolzno.getJSONObject(i);
// Сохраняем каждый json елемент в переменную
String id = c.getString(TAG_ID);
// Создаем новый HashMap
HashMap map = new HashMap();
// добавляем каждый елемент в HashMap ключ => значение
map.put(TAG_ID, id);
// добавляем HashList в ArrayList
productsList.add(map);
}
} catch (JSONException e) {
e.printStackTrace();
}
return null;
}
Сам json-ответ корректен вроде:
{"dolzno":[{"_id":"1"},{"_id":"2"},{"_id":"4"}],"spec":[{"_id":"1"},{"_id":"2"},{"_id":"3"}],"otdel":[{"_id":"1"},{"_id":"2"},{"_id":"3"}]}
Он получается с url.
Насколько я понимаю, он содержит 3 объекта - dolzno, otdel, spec. Вот я и хочу каждый из этих обьектов запихать в arraylist. Однако программа почему-то не видит эти обьекты. (Ввожу их по названию, в примере dolzno - название первого обьекта)
После преобразования я планировал arraylist привязать к спиннеру.
В чем ошибаюсь?