Hallo,
ich würde gerne für einen Loginmanager einen Benutzernamen und das dazugehörige Passwort aus einer Datenbank auslesen. Der Benutzername funktioniert auch, nur das Passwort nicht und ich versteh nicht warum. Die Kommandos zum Auslesen:
Der erste Wert wird ohne Probleme ausgelesen, nur beim zweiten bekomm ich die Fehlermeldung, dass der Wert nicht existiert. Das tut er aber definitiv.
Kurioserweise kann ich mit diesem String
alle Daten auch auslesen.
Was stimmt mit dem String checkPassword nicht?
Was anderes: Momentan lese ich das Passwort aus einem JPasswordField als char-Array aus. Das richtige Passwort wird als String aus der Datenbank ausgelesen, dann in ein char-Array umgewandelt und dann auf Gleichheit überprüft. Ist das sinnvoll? Oder gibt es da bessere Vorgehensweisen?
ich würde gerne für einen Loginmanager einen Benutzernamen und das dazugehörige Passwort aus einer Datenbank auslesen. Der Benutzername funktioniert auch, nur das Passwort nicht und ich versteh nicht warum. Die Kommandos zum Auslesen:
Java:
char[] correctPassword = null;
String pass = String.valueOf(password);
String checkPassword = "SELECT password FROM" + USER +
"WHERE password='" + pass + "'";
Statement s = connection.createStatement();
ResultSet r = s.executeQuery(checkPassword);
while (r.next()) {
System.out.print(r.getString(1) + " || ");
System.out.println(r.getString(2));
correctPassword = r.getString(2).toCharArray();
}
Kurioserweise kann ich mit diesem String
Java:
String show = "SELECT * FROM" + USER;
Was stimmt mit dem String checkPassword nicht?
Was anderes: Momentan lese ich das Passwort aus einem JPasswordField als char-Array aus. Das richtige Passwort wird als String aus der Datenbank ausgelesen, dann in ein char-Array umgewandelt und dann auf Gleichheit überprüft. Ist das sinnvoll? Oder gibt es da bessere Vorgehensweisen?