mysql データベース (名前、姓、年齢) から配列を取得できません。私の Web サービスは動作していますが、Android アプリで応答がありません。
これは私のphpファイルです:
<?php
if($_SERVER["REQUEST_METHOD"]=="POST"){
include 'connection.php';
showStudent();
}
function showStudent()
{
global $connect;
$query = " Select * FROM demo; ";
$result = mysqli_query($connect, $query);
$number_of_rows = mysqli_num_rows($result);
$temp_array = array();
if($number_of_rows > 0) {
while ($row = mysqli_fetch_assoc($result)) {
$temp_array[] = $row;
}
}
header('Content-Type: application/json');
echo json_encode(array("demo"=>$temp_array));
mysqli_close($connect);
}
?>
私のphpは、テストしたjson配列を生成しています。これは、Android アプリでの問題のある JSONObjectRequest です。
public void onClick(View view) {
System.out.println("ww");
JsonObjectRequest jsonObjectRequest = new JsonObjectRequest(Request.Method.POST,
showUrl, null, new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject response) {
System.out.println(response.toString());
try {
JSONArray demos = response.getJSONArray("demo");
for (int i = 0; i < demos.length(); i++) {
JSONObject demo = demos.getJSONObject(i);
String firstname = demo.getString("name");
String lastname = demo.getString("lastname");
String age = demo.getString("age");
tvResult.append(firstname + " " + lastname + " " + age + " \n");
}
tvResult.append("===\n");
} catch (JSONException e) {
e.printStackTrace();
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
System.out.append(error.getMessage());
}
});
requestQueue.add(jsonObjectRequest);
どんな助けも歓迎します、私は解決策を見つけませんでした。私の推測では、このnull可能なパラメータが台無しになっていると思いますが、それを削除すると、大量のエラーが発生します。