美好的一天,
我是PHP
和JSON
的新手,
我的回复如下:
{"products":[{"price":"52.00"},{"price":"11.00"},{"price":"123.00"},{"price":"12.00"},{"price":"1.00"},{"price":"145.00"},{"price":"123.00"}],"success":1}
现在,我必须在textView (totalTextView)
中显示我的Android应用程序中的Total Pice
任何人都可以帮助我。
这是我申请截止日期28Nov 14的关键部分 请将非常感谢。
我的PHP代码:
<?php
/*
* Following code will list all the prices
*/
// array for JSON response
$response = 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 products") or die(mysql_error());
// check for empty result
if (mysql_num_rows($result) > 0) {
// looping through all results
// products node
$response["products"] = array();
while ($row = mysql_fetch_array($result)) {
// temp user array
$product = array();
$product["price"] = $row["price"];
// push single product into final response array
array_push($response["products"], $product);
}
// success
$response["success"] = 1;
// echoing JSON response
echo json_encode($response);
} else {
// no products found
$response["success"] = 0;
$response["message"] = "No products found";
// echo no users JSON
error_reporting(E_ALL ^ E_DEPRECATED);
echo json_encode($response);
}
?>
答案 0 :(得分:0)
您可以使用JSONObject
。它在实例化时也接受String
参数。
了解更多here
答案 1 :(得分:0)
我正在使用gson;)...我认为,这是最好的方式而且非常简单:)
http://www.javacodegeeks.com/2011/01/android-json-parsing-gson-tutorial.html
答案 2 :(得分:0)
首先,如果您不打算向products数组添加任何列,那么这是一个丑陋的JSON响应。换句话说,如果他们都是“价格”将它们保持为价格数组,则不需要产品。无论我认为解析对int数组的响应都是这样的(虽然没有测试):
JSONObject jsonObject = new JSONObject(responseString); //In case the response isn't JSONObject.
JSONArray jsonArray = jsonObject.getJSONArray("products");
int[] priceArray = new priceArray[jsonArray.length()];
for(int i=0;i<jsonArray.length();i++){
JsonObject element = jsonArray.getJSONObject(i);
priceArray[i] = element.getInt("price");
}
答案 3 :(得分:0)
请在脚本中使用以下行:
$response = array();
$product["products"] = array();
while ($row = mysql_fetch_array($result)) {
$product["products"][]["price"] = $row["price"];
}
$response = array_merge($response, $product);
答案 4 :(得分:0)
while ($row = mysql_fetch_array($result)) {
// temp user array
$product = array();
$product["price"] = $row["price"];
$total_price += $row["price"];
// push single product into final response array
array_push($response["products"], $product);
}
// success
$response["success"] = 1;
$response['total_price']=$total_price;