2017-02-22 4 views
1

Ich versuche zu überprüfen, ob der Text von meinem EditText ist bereits in der Datenbank. Ich bin wirklich neu in PHP & MySQL.Überprüfen Sie, ob Benutzername existiert in Android-Code

Ich habe versucht, alle Benutzernamen zu erhalten und zu überprüfen, ob es gleich EditText Text ist. Am Anfang sah es gut aus. Ich überprüfte es mit

if(!UsernameDB.equals(editUsername.getText().toString()){ 
    Toast.makeText(Register.this, "Not taken", Toast.LENGTH_SHORT).show(); 
} 

Das Problem ist, dass es Toast für jeden Namen. Also kann ich nicht fragen, ob alles richtig ausgefüllt ist (E-Mail, Passwort usw.), weil es sagt, dass es nicht übereinstimmt, nachdem es den Namen passierte, der übereinstimmt.

Weiß jemand, wie ich mein Problem lösen kann?

+1

Sind Sie sicher, dass Sie die Zeichenfolge UsernameDB erwartet haben? Es kann hilfreich sein, BenutzernamenDB in adb auszuloggen, um den tatsächlichen Wert zu sehen, bevor Sie den Vergleich durchführen. – dungtatas

+2

ist es unklar, was ist BenutzernameDB ist, einige Informationen darüber zu veröffentlichen – Caner

Antwort

0

Ich bin nicht sicher, ob Sie es von Ajax tun müssen, oder ist es in Ordnung, die Website zu aktualisieren. Hier ist ein Beispiel für die Aktualisierung: Zunächst einmal müssen Sie ein Formular (HTML):

<?php include("loginFunktion.php"); ?> 
<form action="" method="Post">  
     <input name="name"> 
     <input type="submit" name="test" value="test">    
</form> 

Das ist der Grund Ihrer DB-Klasse (neues Blatt):

<?php 
class DB { 
protected $mysqli; 

function __construct(){ 
    $this->host = "***"; 
    $this->username = "***"; 
    $this->database = "***"; 
    $this->password = "***"; 

} 

function connect(){ 
    $this->mysqli = new mysqli($this->host, $this->username, $this->password, $this->database); 

    if (mysqli_connect_errno()) { 
     printf("Connect failed: %s<br/>", mysqli_connect_error()); 
     exit(); 
    } 
} 

function disconnect() { 
    // Verbindung beenden 
    $this->mysqli->close(); 
} 
}  
?> 

Jetzt haben Sie in die Klasse umfasst und durch den Konstruktor Ihrer Klasse (der folgende Code ist das loginFunktion.php Blatt) Ihre DB verbinden:

<?php 
    include("dbclassname.php"); 
    $_DB = new DBData(); 
    $_DB -> connect(); 
?> 

Jetzt haben Sie eine conn EIL zu Ihrem DB und u können querys tun:

if(isset($_POST["test"])){ 
$queryCALL ="SELECT user FROM t_user WHERE user_name=".$_REQUEST["name"]; 
$result = $this->mysqli->query($queryCALL); 
$ergebnis=$result->fetch_array()[0]; 
if(count($ergebnis)>0) 
    echo "this name is used"; 
} 

Wenn Sie auf php ajax neu sind ein bisschen für Sie zu erschweren. Dennoch ist das eine gute Anleitung: https://www.w3schools.com/php/php_ajax_database.asp

Das nächste Mal bitte fügen Sie weitere Informationen hinzu.

Verwandte Themen