2014-10-20 67 views
0

任何人都知道我的「發票」沒有價值的原因是什麼?與PHP響應,它被稱爲發票。在這條線String invoice = jtransaction.getString("invoice");沒有「發票」的值

public static ArrayList<Transaction> getMemberTransactions(String memberId) 
{ 
    String url= second_URL + "get_member_transactions.php"; 
    String method = GET; 
    List<NameValuePair> params = new ArrayList<NameValuePair>(); 
    params.add(new BasicNameValuePair("member_id", memberId)); 
    JSONObject result = makeHttpRequest(url, method, params); 

    try { 

    if (result.getInt("success") == 1) { 
     ArrayList<Transaction> list = new ArrayList<Transaction>(); 
     JSONArray jItems = result.getJSONArray("transaction_info"); 
     int count = jItems.length(); 
     for (int i = 0; i < count; i++) { 
     JSONObject jtransaction = jItems.getJSONObject(i); 

     SimpleDateFormat sdf = new SimpleDateFormat(DATE_FORMAT, 
      Locale.US); 
     Date date = null; 
     try { 
      date = sdf.parse(jtransaction.getString("date")); 
     } catch (ParseException e) { 
      e.printStackTrace(); 
     } 
     String invoice = jtransaction.getString("invoice"); 
     String warehouse = jtransaction.getString("warehouse"); 

     Transaction transaction = new Transaction(date,invoice, warehouse); 
     list.add(transaction); 

     } 
     return list; 
    } 

    } catch (JSONException e) { 
    e.printStackTrace(); 
    } 
    return null; 

} 

PHP

while ($row = sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)) 
{ 
    $transactionInfo[]["date"] = get_date($row['Transaction_Date']); 
    $transactionInfo[]["invoice"] = $row['Invoice_No']; 
    $transactionInfo[]["warehouse"] = $row['WarehouseName']; 
} 

if(!empty($transactionInfo)===true) 
{ 
    response_success($transactionInfo); 
} 

function response_success($transactionInfo) { 
    $response = array(); 
    $response["success"] = 1; 
    $response["transaction_info"] = $transactionInfo; 
    echo json_encode($response); 
    exit; 
} 
+1

可您發佈JSON呢? – Veeru 2014-10-20 06:12:48

回答

0

此:

$transactionInfo[]["date"] = get_date($row['Transaction_Date']); 
$transactionInfo[]["invoice"] = $row['Invoice_No']; 
$transactionInfo[]["warehouse"] = $row['WarehouseName']; 

將在$transactionInfo創建三個獨立的內容,其中包括date,一個與invoice和一個與warehouse之一。

例子:

array(3) { 
    [0]=> 
    array(1) { 
    ["date"]=> 
    string(10) "2014-10-20" 
    } 
    [1]=> 
    array(1) { 
    ["invoice"]=> 
    string(5) "08/15" 
    } 
    [2]=> 
    array(1) { 
    ["warehouse"]=> 
    int(13) 
    } 
} 

我想你希望他們在一個項目,所以你必須建立這樣的:

$item["date"] = get_date($row['Transaction_Date']); 
$item["invoice"] = $row['Invoice_No']; 
$item["warehouse"] = $row['WarehouseName']; 
// now add the item to the array 
$transactionInfo[] = $item; 

例子:

array(1) { 
    [0]=> 
    array(3) { 
    ["date"]=> 
    string(10) "2014-10-20" 
    ["invoice"]=> 
    string(5) "08/15" 
    ["warehouse"]=> 
    int(13) 
    } 
}