Senden Ich habe Daten eines Benutzers mit seiner ID zu erhalten und die Daten würden auf Android usind Nachrüstung verwendet werden, meine PHP-Web-Service istWeb-Service ist nicht korrekte Antwort
<?php
$con = mysqli_connect("localhost", "admin", "pwd", "api");
$id = $_POST["id"];
$sql= "SELECT * from users WHERE id = $id ";
$query = mysqli_query($conn, $sql)
$result= mysqli_fetch_array($query);
if ($result[0]>0) {
$json = array("name" => $result[1],"last_name" => $result[2], "email" => $result[3], "password" => $result[4],
"city" => $result[5], "address" => $result[6], "gender" => $result[7], "dob" => $result[8], "about" => $result[9],
"phone_number" => $result[10]);
header('content-type: application/json');
echo json_encode($json);
}
else {
$json = array("result" => "null", "status" => "invalid data");
header('content-type: application/json');
echo json_encode($json);
}
mysqli_close($con);
?>
mein Retrofit-Service ist
@FormUrlEncoded
@POST("/getUserDetailsById.php")
Call<User> getUserDetail(@Field("id") int id);
in meiner Aktivität ich habe
String uid = mLoginPreferences.getString(Constant.USER_ID, "");
Log.e("PREF_ID", " is " + uid);
mUserCall = mRestManager.getApiService().getUserDetail(Integer.valueOf(uid));
mUserCall.enqueue(new Callback<User>() {
@Override
public void onResponse(Call<User> call, Response<User> response) {
User userDetails = response.body();
if (userDetails.getEmail() != null){
Log.e("RESPONSE_ID", " is " + userDetails.getName());
}
}
@Override
public void onFailure(Call<User> call, Throwable t) {
Log.e("DETAILS_ERROR", " message is " + t.getMessage());
}
});
an der Linie
Ich bekomme den richtigen ID-Wert, aber kann keine Daten zurück vom Server erhalten immer Null als respnse.body()
erhalten, möchte wissen, wie ich Daten eines bestimmten Benutzers mit seiner ID erhalten kann.
Haben Sie den Statuscode überprüft? ist es 200Ok? – Sanoop
Welchen Fehler sehen Sie in der Konsole? –
Versucht in _Postman_ und bekommen __500 Interner Server error__ status –