Ich mache eine App, in der ich Benutzerdaten aus der entsprechenden SQL-Tabelle mit PHP abrufen.Wert [Zeichenfolge] <br> [Zeichenfolge] <br> des Typs java.lang.String kann nicht in JSONArray konvertiert werden
<?php
$email = $_POST["email"];
@mysql_connect("localhost","root","root") or die(@mysql_error());
@mysql_select_db("dtbse") or die(@mysql_error());
$x = mysql_query("select * from dtbse where email = '$email' ") or die(@mysql_error());
$result = array();
while ($y=mysql_fetch_array($x)) {
echo $y["uname"]."<br>";
echo $y["gender"]."<br>";
echo $y["pass"]."<br>";
echo $y["address"]."<br>";
echo $y["email"]."<br>";
}
?>
Jede Hilfe wird sehr geschätzt. Ich weiß, dass diese Frage schon oft gestellt wurde, aber ich denke nicht, dass es etwas gibt, das dieses Problem reproduziert. Vielen Dank.
Hier ist das Code-Snippet, das für das Abrufen und Parsen zuständig ist. letzte ArrayList arr = neue ArrayList(); arr.add (neuer BasicNameValuePair ("email", uname));
try {
DefaultHttpClient httpclient = new DefaultHttpClient(new BasicHttpParams());
HttpPost httppost = new HttpPost("http://xxyoxx.esy.es/getDetails.php");
httppost.setEntity(new UrlEncodedFormEntity(arr));
HttpResponse hr = httpclient.execute(httppost);
HttpEntity ent = hr.getEntity();
is = ent.getContent();
Toast.makeText(getApplicationContext(),"1 wrk ",Toast.LENGTH_LONG).show();
} catch (Exception fl) {
Toast.makeText(getApplicationContext(),"First Try error "+fl,Toast.LENGTH_LONG).show();
}
/*// Depends on your web service
httppost.setHeader("Content-type", "application/json");*/
String result=null;
try {
// json is UTF-8 by default
BufferedReader reader = new BufferedReader(new InputStreamReader(is, "UTF-8"), 8);
StringBuilder sb = new StringBuilder();
String line;
while ((line = reader.readLine()) != null) {
sb.append(line + "\n");
}
result = sb.toString();
Toast.makeText(getApplicationContext(),"2 str\n "+result,Toast.LENGTH_LONG).show();
} catch (Exception sl) {
sl.printStackTrace();
Toast.makeText(getApplicationContext(),"2 err\n "+sl,Toast.LENGTH_LONG).show();
}
try{
String aa = "", b = "", c = "";
JSONArray ar = new JSONArray(result);
for (int i = 0; i < ar.length(); i++) {
JSONObject jo = ar.getJSONObject(i);
aa = jo.getString("uname");
b = jo.getString("address");
c = jo.getString("email");
}
nm.setText(aa);
addr.setText(b);
mail.setText(c);
Toast.makeText(getApplicationContext(),"3 wrk"+result,Toast.LENGTH_LONG).show();
}
catch (Exception tl){
Toast.makeText(getApplicationContext(),"3 err "+tl,Toast.LENGTH_LONG).show();
}
Bitte posten Sie Ihre JSON-Daten –
Verwenden Sie nicht den Fehlerunterdrückungsoperator. Niemals. Es gibt absolut keinen gültigen Anwendungsfall dafür. – apokryfos
Es ist ein Fehler in Ihrer JSON-Antwort, es ist der tipical orange quadratische Fehler melden, dann erhalten Sie
.... zeigen Sie Ihre URL auf comercial Browser, um besser Ihre Antwort zu sehen. – Aspicas