Hallo Leute,
mein Skript steht unten in Auszügen, damit habe ich folgendes Problem:
Nachdem ich über SELECT.... eine Abfrage aller Usernamen gemacht habe, die existieren wird mit der for-Schleife für alle Datensätze aus dem Array verglichen, ob der eingegebene Username sich von denen aus der DB unterscheidet oder nicht. Funktioniert auch.
Bloß wenn der Username nicht existiert, also der User angelegt werden soll, wird die Abfrage nicht ausgeführt und kein Datensatz wie eigentlich gewollt eingefügt. Wo ist hier der Fehler? Danke
------------
-------------
mein Skript steht unten in Auszügen, damit habe ich folgendes Problem:
Nachdem ich über SELECT.... eine Abfrage aller Usernamen gemacht habe, die existieren wird mit der for-Schleife für alle Datensätze aus dem Array verglichen, ob der eingegebene Username sich von denen aus der DB unterscheidet oder nicht. Funktioniert auch.
Bloß wenn der Username nicht existiert, also der User angelegt werden soll, wird die Abfrage nicht ausgeführt und kein Datensatz wie eigentlich gewollt eingefügt. Wo ist hier der Fehler? Danke
------------
PHP-Code:
//Verbindung zur Datenbank
$sql = "SELECT UserName FROM $tabellenname WHERE
UserName='".mysql_real_escape_string($username)."'";
$result = mysql_query($sql, $con);
for($i=0; $i<@mysql_num_rows($result); $i++)
{
$ergebnis[$i] = mysql_fetch_array($result);
}
for($i=0; $i<count($ergebnis); $i++)
{
//Die nachfolgende if-Bedingung wird nicht ausgeführt,
Fehlermeldung erscheint nicht, es wird nur kein INSERT ausgeführt.
if($_POST['username']!=$ergebnis[$i]['UserName'])
{
$sql = "INSERT INTO $tabellenname (UserName, UserPass,
UserMail) values ('".mysql_real_escape_string($username,
$con)."','".mysql_real_escape_string($passwort,
$con)."','".mysql_real_escape_string($email, $con)."')";
mysql_query($sql, $con);
echo "Deine Daten wurden erfolgreich eingetragen!";
}
else
{echo "Dieser Username existiert bereits! Bitte suchen Sie sich
einen anderen Usernamen aus";}
}
Kommentar