Php JSONException:值。<;!无法将java.lang.String类型的DOCTYPE转换为JSONObject错误

Php JSONException:值。<;!无法将java.lang.String类型的DOCTYPE转换为JSONObject错误,php,android,json,parsing,android-studio,Php,Android,Json,Parsing,Android Studio,我已经在网上寻找解决方案,看看我可能做错了什么,但我找不到我的错误。php工作正常,所以我不确定我做错了什么。请帮忙!这是我的php <?php if($_SERVER['REQUEST_METHOD']=='GET'){ $Speciality = $_GET['Speciality']; require_once('db_config.php'); $sql = "SELECT * FROM doctor WHER

我已经在网上寻找解决方案,看看我可能做错了什么,但我找不到我的错误。php工作正常,所以我不确定我做错了什么。请帮忙!这是我的php

      <?php 

      if($_SERVER['REQUEST_METHOD']=='GET'){

      $Speciality  = $_GET['Speciality'];

      require_once('db_config.php');

      $sql = "SELECT * FROM doctor WHERE Speciality='".$Speciality."'";

      $r = mysqli_query($con,$sql);

      $res = mysqli_fetch_array($r);

      $result = array();

      array_push($result,array(
      "Name"=>$res['Name'],
      "Speciality"=>$res['Speciality'],
      "Hospital"=>$res['Hospital']


        )
          );

         echo json_encode(array("result"=>$result));

         mysqli_close($con);

           }

将此添加到您的php脚本中并尝试一下

<?php

header('Content-type: application/json');

?>


Web服务的输出是什么?它是否返回任何错误?内容类型/html输出是什么?在我看来,您忘记了将响应的标题设置为JSON,您得到的是html响应,而您的Android应用程序无法将其解析为JSON。在Android studio中记录响应,然后再尝试解析它,以查看您得到了什么(
Log.i(“tag”,response.toString());
看到这一点。您得到的响应是不正确的。因此,该响应将是html格式。嘿,Houssam。这不管用,我得到了一般想法,并且能够解决问题!谢谢☺
       07-21 10:54:30.629 4221-4221/com.kirathe.mos.afriemergency 

W/System.err: org.json.JSONException: Value .<!DOCTYPE of type java.lang.String cannot be converted to JSONObject
07-21 10:54:30.631 4221-4221/com.kirathe.mos.afriemergency W/System.err:     at org.json.JSON.typeMismatch(JSON.java:111)
07-21 10:54:30.631 4221-4221/com.kirathe.mos.afriemergency W/System.err:     at org.json.JSONObject.<init>(JSONObject.java:160)
07-21 10:54:30.631 4221-4221/com.kirathe.mos.afriemergency W/System.err:     at org.json.JSONObject.<init>(JSONObject.java:173)
07-21 10:54:30.631 4221-4221/com.kirathe.mos.afriemergency W/System.err:     at com.kirathe.mos.afriemergency.MainActivity.showJSON(MainActivity.java:389)
07-21 10:54:30.631 4221-4221/com.kirathe.mos.afriemergency W/System.err:     at com.kirathe.mos.afriemergency.MainActivity.access$100(MainActivity.java:45)
07-21 10:54:30.631 4221-4221/com.kirathe.mos.afriemergency W/System.err:     at com.kirathe.mos.afriemergency.MainActivity$2.onResponse(MainActivity.java:368)
07-21 10:54:30.631 4221-4221/com.kirathe.mos.afriemergency W/System.err:     at com.kirathe.mos.afriemergency.MainActivity$2.onResponse(MainActivity.java:364)
07-21 10:54:30.632 4221-4221/com.kirathe.mos.afriemergency W/System.err:     at com.android.volley.toolbox.StringRequest.deliverResponse(StringRequest.java:60)
07-21 10:54:30.632 4221-4221/com.kirathe.mos.afriemergency W/System.err:     at com.android.volley.toolbox.StringRequest.deliverResponse(StringRequest.java:30)
07-21 10:54:30.632 4221-4221/com.kirathe.mos.afriemergency W/System.err:     at com.android.volley.ExecutorDelivery$ResponseDeliveryRunnable.run(ExecutorDelivery.java:99)
07-21 10:54:30.632 4221-4221/com.kirathe.mos.afriemergency W/System.err:     at android.os.Handler.handleCallback(Handler.java:739)
07-21 10:54:30.632 4221-4221/com.kirathe.mos.afriemergency W/System.err:     at android.os.Handler.dispatchMessage(Handler.java:95)
07-21 10:54:30.632 4221-4221/com.kirathe.mos.afriemergency W/System.err:     at android.os.Looper.loop(Looper.java:211)
07-21 10:54:30.632 4221-4221/com.kirathe.mos.afriemergency W/System.err:     at android.app.ActivityThread.main(ActivityThread.java:5389)
07-21 10:54:30.632 4221-4221/com.kirathe.mos.afriemergency W/System.err:     at java.lang.reflect.Method.invoke(Native Method)
07-21 10:54:30.632 4221-4221/com.kirathe.mos.afriemergency W/System.err:     at java.lang.reflect.Method.invoke(Method.java:372)
07-21 10:54:30.632 4221-4221/com.kirathe.mos.afriemergency W/System.err:     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1020)
07-21 10:54:30.632 4221-4221/com.kirathe.mos.afriemergency W/System.err:     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:815)
<?php

header('Content-type: application/json');

?>