![]() |
SQL-abfrage nach bereits vorhandenem username
ich schreibe derzeit an einer userverwaltung, diese funktioniert auch ganz gut, nur möchte ich, daß bei der registratur von usern für den fall, daß ein user einen username wählt, der schon vorhanden ist, eine entsprechende fehlermeldung angezeigt wird. ich habe dafür folgende lösung, aber irgendwie wird es nicht erkannt, wenn ich einen username eingebe und dieser schon vorhanden ist, da wird nur eine standardfehlermeldung ausgegeben, daß die eingabe des usernames nicht funktioniert hat, aber ich würde da gerne zwischen diesem fehler und einem fehler aufgrund eines bereits vorhandenen usernames unterscheiden. weiß jemand, wo mein fehler liegt? hier ist mein qt:
$sql = "INSERT INTO user (username, password) VALUES('" . $user . "', '" . $password . "')"; if (!$user_erstellen = mysql_query($sql, $db_on)) { // eingabe fehlgeschlagen $sql = "SELECT * FROM user WHERE username='" . $user; if ($usercheck = mysql_query($sql,$db_on)) { // warum fehlgeschlagen, username schon vorhanden? $ausgabe = "FEHLER! User $user existiert bereits!"; } else { $ausgabe = "FEHLER! User $user wurde nicht erstellt!"; } } else { $ausgabe = "User $user wurde erfolgreich erstellt."; } vielen dank für eure mühen. |
Beim 2. SQL fehlt nach dem Usernamen das abschleißende '
$sql = "SELECT * FROM user WHERE username='" . $user. "'"; Außerdem musst du glaub ich schauen ob mysql_affected_rows >0 is weil mysql_querry nur false liefert wenn mit der Abfrage was nicht stimmt. Wenn aber der SQL erfolgreich ausgeführt wurde ist er TRUE auch wenn du nichts zurück bekomms. |
das "'" wars
danke. :-)
|
noch eine frage
ich verwende phpAdmin, habe da die meldung
Zitat:
|
also ich würde zuerst mal abfragen ob ein user mit diesem namen schon existiert, und dann erst insert into oder "user existiert bereits"
|
@RaistlinMajere:
mysql> CREATE DATABASE blabla versuchs mal so, du musst schon den namen der neuen datenbank angeben.... -zeke |
@mr blub
ich verstehe nicht, woher diese meldung kommt, ich habe bereits bestehende datenbanken mit namen, tabellen und einträgen. und ich habe nicht versucht, eine neue db zu erstellen, was eine solche meldung zur folge haben könnte, hätte ich keinen namen angegeben oder sonst was.
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 03:25 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag