0
我正在從JSON數據發送到Web服務器。我有數組列表CURRENCY_RATE_LST,並且我想將它發送到服務器。 下面是我的代碼發生錯誤:org.json.JSONException:字符3輸入結束時當我發送JSON到WEB服務器
的Android代碼:
for(int i=0;i<currency_rate_lst.size();i++)
{
try
{
currency_rate_JSON .put(""+currency_code_lst.get(i), currency_rate_lst.get(i));
}
catch (JSONException e)
{
e.printStackTrace();
Log.e("JSON ENCODIG ERROR ",""+e.getMessage());
}
}
final JSONObject JSON = new JSONObject();
try
{
JSON.put("currency_rate_JSON", currency_rate_JSON);
} catch (JSONException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
AsyncTask<Void, Void, String> task = new AsyncTask<Void, Void, String>()
{
String message="Nothing happend";
@Override
protected String doInBackground(Void... params)
{
InputStream is=null;
String result=null;
ArrayList<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(5);
nameValuePairs.add(new BasicNameValuePair("currency_rate_json",""+String.valueOf(JSON)));
'
'
.
}
PHP代碼:
//Receive JSON
$JSON_Received = $_POST["currency_rate_json"];
//Decode Json
$obj = json_decode($JSON_Received, true);
foreach ($obj['currency_rate_JSON'] as $key => $value)
{
//echo "<br>------" . $key . " => " . $value;
$currency_rate=$value;
$currency_code=$key;
//$con=$GLOBALS['con'];
$sql2="UPDATE `pirzawbh_currency_exchange`.`latest_currency_rate_table` SET currency_rate = '$currency_rate'
WHERE `latest_currency_rate_table`.`currency_code` ='$currency_code';";
if (!mysql_query($sql2, $con))
{
//echo "\n =".mysql_error($con);
// echo"\n errro occured";
}
//else
//echo"\n Updated row id = ".$rowID." Successfuly";;
}
夫婦在PHP方面的問題我看到。我不是一個機器人工程師,所以我不能說如果沒有你的輸出的例子,那邊是否構建了正確的json。 – IncredibleHat
@Randall有什麼問題兄弟,你可以告訴我 –
你可以添加'print_r($ _ POST);'到你的PHP的頂部調試後來發佈什麼? – IncredibleHat