Meine PHP-Datei, login.php, sieht wie folgt aus:Android Volley. Warum wird meine Antwort immer als falsch zurückgegeben?
<?php
//if($_SERVER['REQUEST_METHOD']=='POST'){
//$username = $_POST['username'];
$username = "Dave";
require_once('dbConnect.php');
$sql = "SELECT * FROM user WHERE username = '$username'";
$result = mysqli_query($con,$sql);
$check = mysqli_fetch_array($result);
if(isset($check)){
echo 'Logged in';
} else {
echo 'Could not log in';
}
//}
?>
Als ich nach myserver.com/login.php gehen, ich Logged in
sehen, weil Dave in meiner Datenbank.
In meinem Android-App, mein Volley Einloggen Schaltfläche sieht wie folgt aus:
private void userLogin() {
username = editTextUsername.getText().toString().trim();
// password = editTextPassword.getText().toString().trim();
StringRequest stringRequest = new StringRequest(Request.Method.POST, LOGIN_URL,
new Response.Listener<String>() {
@Override
public void onResponse(String response) {
if(response.trim().equals("Logged in")){
Toast.makeText(LoginActivity.this,"yahoo, you're in",Toast.LENGTH_LONG).show();
openProfile();
}else{
Toast.makeText(LoginActivity.this,"sorry, you're out",Toast.LENGTH_LONG).show();
// Toast.makeText(LoginActivity.this,response,Toast.LENGTH_LONG).show();
}
}
}, etc... etc...
Aber wenn ich mein Login Button klicken, mein Toast ist immer, sorry, you're out
. Weißt du, warum ?
An der Spitze Ihrer PHP-Datei fügen Sie 'error_reporting (E_ALL);' hinzu und anstelle der benutzerdefinierten Nachricht zum Toasten sollten Sie einfach den Wert von 'response.trim()' toasten. – MonkeyZeus