嘿im試圖從我的android應用程序發送數據到web服務器並使用mysql將它發送到數據庫,雖然它似乎沒有任何錯誤,但我的代碼沒有工作使用json從android發送數據到php
Android的Java代碼:
String categorys=category.getText().toString();
String authors = author.getText().toString();
String quess = question.getText().toString();
String anss = answer.getText().toString();
try {
JSONObject json = new JSONObject();
json.put("category",categorys);
json.put("ques",quess);
json.put("ans",anss);
json.put("authors",authors);
postData(json);
} catch (JSONException e) {
e.printStackTrace();
}
}
});
}
public void postData(JSONObject json) throws JSONException {
HttpClient httpclient = new DefaultHttpClient();
try {
HttpPost httppost = new HttpPost("http://shlomo.webuda.com/androidtomy.php");
List<NameValuePair> nvp = new ArrayList<NameValuePair>(2);
nvp.add(new BasicNameValuePair("json", json.toString()));
//httppost.setHeader("Content-type", "application/json");
httppost.setEntity(new UrlEncodedFormEntity(nvp));
HttpResponse response = httpclient.execute(httppost);
if(response != null) {
InputStream is = response.getEntity().getContent();
//input stream is response that can be shown back on android
}
}
catch (Exception e)
{
e.printStackTrace();
}
}`
PHP代碼
mysql_connect("something","something","something");
mysql_select_db("something");
$json = $_SERVER['HTTP_JSON'];
echo "JSON: \n";
var_dump($json);
echo "\n\n";
$data = json_decode($json,true);
var_dump($data);
$category=$data['category'];
$author=$data['authors'];
$question=$data['ques'];
$answer=$data['ans'];
$sql = 'INSERT INTO Ques(Ques_Author, Ques_Question,Ques_Answer,Ques_Category,Ques_Approve) values("category","author","question","answer","0")';
mysql_query($sql);
}
>
定義副本「不工作」 – njzk2
沒有進入數據庫,插入查詢什麼也沒有發送.. –
當你的值被命名爲'json'並且是一個POST變量時,你期待'$ _SERVER ['HTTP_JSON']'做什麼?不應該只是'$ _POST ['json']'? – njzk2