Вот моя проблема:com.android.volley.ParseError: org.json.JSONException: Значение <бр типа java.lang.String не могут быть преобразованы в JSONArray
Я пытаюсь получить данные с сервера через PHP в android и всякий раз, когда я пытаюсь это сделать, я получаю эту ошибку:
[com.android.volley.ParseError: org.json.JSONException: значение br типа java.lang.String не может быть преобразовано в JSONArray]
Я уверен, что мой код правильный, потому что я попытался использовать данные от https://jsonplaceholder.typicode.com/ , и это сработало.
Я использую сервер xampp и использую php для подключения.
вот мой Java код:
final String url1 = "http://192.168.0.101/deliveryApp/sellerProfile.php";
JsonArrayRequest jsonArrayRequest = new JsonArrayRequest(url1, new Response.Listener<JSONArray>() {
@Override
public void onResponse(JSONArray response) {
Log.v("response is : ", String.valueOf(response));
for (int i = 0 ; i < response.length() ; i++){
try{
JSONObject jsonObject = response.getJSONObject(i);
String tvfirstname = jsonObject.getString("firstname");
String tvlastname = jsonObject.getString("lastname");
String tvphonenumber = jsonObject.getString("email");
String tvemail = jsonObject.getString("phonenumber");
sellername.setText(tvfirstname +" "+ tvlastname);
selleremail.setText(tvemail+" ");
sellerphonenumber.setText(tvphonenumber+" ");
}catch (JSONException e){
}
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
System.out.println(error);
}
});
requestQueue.add(jsonArrayRequest);
мой PHP скрипт для этого:
<?php
$dbname = "delivery_app";
$username = "root";
$password = "";
$host = "localhost";
$connection=mysqli_connect($host,$username,$password,$dbname);
session_start();
$email = $_SESSION['tempemail'];
//$email = $_POST["email"];
$querySellerProfile = "SELECT * FROM login WHERE email = '$email'";
if($fetchresult = mysqli_query($connection,$querySellerProfile)){
while ($response = mysqli_fetch_array($fetchresult)) {
// echo $response['firstname'];
// echo $response['lastname'];
// echo $response['email'];
// echo $response['phonenumber'];
// echo $response['password'];
$response2[] = $response;
}
echo json_encode($response2);
}else{
die("failed to get profile information");
}
/*
THIS CODE WILL RETRIEVE USER DATILS , AND ITS WORKING PERFECTLY
*/
?>
и ответ от сервера:
[
{
"0": "2",
"1": "testfname",
"2": "testlname",
"3": "testemail",
"4": "9650684491",
"5": "5555",
"id": "2",
"firstname": "testfname",
"lastname": "testlname",
"email": "testemail",
"phonenumber": "9650684491",
"password": "5555"
}
]
Я использовал Почтальон приложение проверьте, работает ли мой php или нет, и так оно и было.
Я просто не могу найти проблему с моим кодом.
Любая помощь будет оценена по достоинству.
не могли бы вы уточнить ?? –