2017-04-25 1 views
-1

값 유형이 java.lang.String 인 데이터베이스가 J_SON으로 변환 될 수 없습니다. 다음 코드를 실행하려고하면 객체 오류가 발생합니다. 다른 답변은 없습니다. 여기에.문자열을 JSONObject 예외로 변환 할 수 없습니다. -

protected void onProgressUpdate(String... progress) { 

try {  

JSONObject json= new JSONObject(progress[0]); 
//display response data 

if (json.getString("msg")==null) 
return; 
if (json.getString("msg").equalsIgnoreCase("user is added")) { 
Toast.makeText(getApplicationContext(), json.getString("msg"), Toast.LENGTH_LONG).show(); 
String url="http://192.168.1.100:8080/TwitterServer/login.php?email="+etEmail.getText().toString()+"&password="+etPassword.getText().toString() ; 

new MyAsyncTaskgetNews().execute(url); 
      } 

if (json.getString("msg").equalsIgnoreCase("Pass Login")) { 
JSONArray UserInfo=new JSONArray(json.getString("info")); 
JSONObject UserCreintal= UserInfo.getJSONObject(0); 

hideProgressDialog(); 
SaveSettings saveSettings= new SaveSettings(getApplicationContext()); 
saveSettings.SaveData(UserCreintal.getString("user_id")); 
finish(); 
      } 

} catch (JSONException ex) { 
ex.printStackTrace(); 

} 
    } ` 

이 오류

W/System.err: org.json.JSONException: Value <br of type java.lang.String cannot be converted to JSONObject 
W/System.err:  at org.json.JSON.typeMismatch(JSON.java:111) 
W/System.err:  at org.json.JSONObject.<init>(JSONObject.java:160) 
W/System.err:  at org.json.JSONObject.<init>(JSONObject.java:173) 
W/System.err:  at com.example.kabzjoe.bakewithme.Login$MyAsyncTaskgetNews.onProgressUpdate(Login.java:332) 
W/System.err:  at com.example.kabzjoe.bakewithme.Login$MyAsyncTaskgetNews.onProgressUpdate(Login.java:295) 
W/System.err:  at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:681) 
W/System.err:  at android.os.Handler.dispatchMessage(Handler.java:111) 
W/System.err:  at android.os.Looper.loop(Looper.java:207) 
W/System.err:  at android.app.ActivityThread.main(ActivityThread.java:5763) 
W/System.err:  at java.lang.reflect.Method.invoke(Native Method) 
W/System.err:  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:789) 
W/System.err:  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:679) 
+0

을 구문 분석 할 수있는, 허리에 변환 할 수 없습니다 귀하의 json 결과는 어디에 있습니까 – Noorul

+0

가능한 [org.json.JSONException : java.lang.String 유형의 값

+0

이것은 중복 된 @AndyDeveloper가 아니며, 왜 나는 그것을 게시 할까? – user7916595

답변

1

진행은 무엇인가 [0]? 문자열 된 JSONObject

+0

선언은 메서드 괄호'protected void onProgressUpdate (String ... progress) { try {'..... – user7916595

+0

JSON 형식이 잘못되었습니다. –

+0

@ Jacky.Lee 디버그를 위해 try 블록 안에이 줄을 추가하고 Log.e ("progress", ""+ progress [0]); 어떤 응답을 얻고 있었는지 – Steve

0

문제는 당신이 당신의 응답 만 JSON 될 것 헤더와 함께 PHP

header('Content-Type: application/json'); 
echo json_encode($response); 

을 기능 추가해야합니다 그리고 당신은 그것을

+0

을 게시했지만 여전히 동일한 오류가 발생합니다. – user7916595

관련 문제