• Hab heute folgendes Problem:

    Ich bin gerade dabei eine Registrierung zu erstellen,
    Form ist erstellt etc.

    Wenn ich aber nun einen neuen Nutzername eingebe steht dort:
    Nutzername ist bereits vorhanden,
    obwohl dieser noch garnicht in der Datenbank vorhanden ist..  ?(

    Spoiler anzeigen
    PHP
    <?php	require_once('../config.php');	?><html><head><title>..</title></head><body>	<?php	$name = $_POST['name'];	$pword = $_POST['pword'];	$rpword = $_POST['rpword'];	$date = date("Y-m-d");	 if($name&&$pword){ if($pword == $rpword)	{		$chkquery = mysql_query("SELECT username FROM login WHERE username = '{$name}'");	 $userchk = mysql_num_rows($chkquery); if($userchk != 0)	 {	 $pword = md5($pword); $insquery = mysql_query("INSERT INTO login VALUES('','{$name}','{$pword}','{$date}')");	 echo "Registrierung erfolgreich!"; }	 else {			echo "Nutzername bereits vorhanden";	}}else{ echo "Die Passwörter stimmen nicht überein";}}else{ echo "Bitte füllen sie alle Felder aus";}?> <form method="post" action="register.php">	<table width="600">		<tr><td>Nutzername:</td><td><input type="text" name="name" value="<?php echo $name; ?>"/> </td> </tr>	<tr><td>Passwort:</td><td><input type="password" name="pword" /> </td> </tr>	<tr><td>Passwort wiederholen:</td><td><input type="password" name="rpword" /> </td> </tr>	<tr><td></td><td><input type="submit" name="submit" value="Registrieren"/> </td> </tr>		</table></form></body>




    Hier der Code etwas übersichtlicher;

  • Das Problem ist, dass er prüft, ob $userchk nicht gleich 0 ist.
    Und wenn es nicht gleich 0 ist, also ein User bereits registriert ist, führt er das Script zur Registrierung aus.

    Müsste normalerweise genau andersrum sein, da er sonst nur einen Account erstellt wenn der Benutzername bereits existiert.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!