попробуйте это,
android.os.Process.killProcess(pid)
, который будет работать ...
Когда вы говорите «получить результаты», вы имеете в виду, что хотите получить доступ к этим значениям? Если это так, присвойте свои данные json переменной, скажем, data
.
Затем: $json = json_decode($data);
foreach($json[0] as $values1) {
var_dump($values1);
}
foreach($json[1] as $values2) {
var_dump($values2);
}
Чтобы получить имя продукта, например, из первого объекта, вы должны сделать $ values1-> product_name. И так далее для других свойств.
Я переделал ваш php-код, чтобы вы могли получить желаемый результат.
Вместо строк assignind, возвращаемых из запроса mysql, создайте ассоциативный массив в соответствии с вашим требованием, а затем преобразуйте его в json
<?php
$host = "localhost"; /* Host name */
$user = "root"; /* User */
$password = ""; /* Password */
$dbname = "mydb"; /* Database name */
$con = mysqli_connect($host, $user, $password,$dbname);
// Check connection
if (!$con) {
die("Connection failed: " . mysqli_connect_error());
}
$res_arr = array();
$query = '
SELECT
c.id,
c.category_name,
c.buyer_userid,
p.id,
p.product_name,
p.buyer_userid,
p.category_id,
s.items_id,
s.item_name,
s.quantity
FROM `categorys` c
INNER JOIN `product` p ON c.id=p.category_id
INNER JOIN `sales` s ON p.id=s.product_id
ORDER BY c.id';
$result = mysqli_query($con,$query);
while($row = mysqli_fetch_array($result)){
$res['id'] = $row[0];
$res['cat_name'] = $row[1];
$res['catbuy_userid'] = $row[2];
$res['products_info']['id'] = $row[3];
$res['products_info']['productid'] = $row[4];
$res['products_info']['product_name'] = $row[5];
$res['products_info']['buyer_userid'] = $row[6];
$res['products_info']['sales_info']['items_id'] = $row[7];
$res['products_info']['sales_info']['items_name'] = $row[8];
$res['products_info']['sales_info']['buyer_userid'] = $row[6];
$res['products_info']['sales_info']['quantity'] = $row[9];
$res_arr[] = $res;
}
}
echo json_encode($res_arr);
?>
Это можно сделать, приведя от (array) $row
к (object) $row
:
$res_arr = array();
while($row = $result->fetch_assoc()){
array_push($res_arr, (object) $row);
}
header("Content-type: application/json; charset=utf-8");
die(json_encode($res_arr));
Я бы использовал fetch_assoc () , чтобы предотвратить дублирование пронумерованных полей, которые просто раздувают полезная нагрузка ... все вложение в основном бесполезно, и оно дает только качество мусорного кода, в то время как нигде нет больше, чем один вложенный элемент (и это впоследствии сложнее, чем необходимо для доступа на стороне клиента). Вложение будет иметь смысл, когда, например. сначала выбирая все categories
, а затем вкладывая все products
для этого category
, прежде чем перейти к следующему category
.