hilfe bei mein register system

slipknoter6

Mitglied
habe 1 error weis net wied er weg geht es ist ein registersystem

Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\login\bbb\reg.php on line 19

das ist zeile 19
PHP:
$username_exist = mysql_num_rows($checkuser);

PHP:
$checkuser = mysql_query("SELECT nickname FROM benutzerdaten WHERE username='$username'");

$username_exist = mysql_num_rows($checkuser);

if($username_exist > 0){
echo "I'm sorry but the username you specified has already been taken.Please pick another one.";
unset($username);
exit();
}
 
Abgesehen von deiner misserablen Gross/Kleinschreibung solltest du dir das Einrücken deines Codes unbedingt angewöhnen. Grade bei Den SQL-Statements wirds sonst schwierig den Fehler schnell zu erkennen.

Zu deinen Problem:
Entweder existiert der $username in deiner Tabelle nicht oder du hast nickname, benutzerdaten,username falsch geschrieben.

Mach mal ne Fehlerabfrage mit:
PHP:
    if (mysql_errno()) {
        echo mysql_errno() . ": " . mysql_error(). "\n";
    }
 
Kann das sein das es dich nicht intressiert wenn dich wer auf deine Gross und Kleinschreibung hinweisst? Paar Punkte oder Kommas wären auch ganz schick :)

Desweiteren solltest du schon den betreffenden Code zum Abspeichern der Userdaten in die Datenbank schon posten. Ansonsten können wir nur Orakeln was da falsch sein könnte.
 
AHM okay
PHP:
//Connect to database

mysql_connect ( $dbhost, $dbuser, $dbpass)or die("Could not connect: ".mysql_error());
mysql_select_db($dbname) or die(mysql_error());

$name = $_POST['name'];
$email = $_POST['email'];    
$username = $_POST['nickname'];
$password = md5($_POST['kennwort']);

$checkuser = mysql_query("SELECT nickname FROM benutzerdaten WHERE nickname='$username'");

$username_exist = mysql_num_rows($checkuser);

if($username_exist > 0){
echo "I'm sorry but the username you specified has already been taken.Please pick another one.";
unset($username);
exit();
} 

$query = "INSERT INTO benutzerdaten (vorname, nachname, nickname, kennwort)
VALUES('$name', '$email', '$username', '$password')";
mysql_query($query) or die(mysql_error());
mysql_close();

echo "You have successfully Registered";

So das war der Code da wo der glaubich Speichert.
 
SQL:
$query = "INSERT INTO benutzerdaten (vorname, nachname, nickname, kennwort)
VALUES('$name', '$email', '$username', '$password')";

Bitte tue das mal richtig Einrücken. Das geht so:

Dann fällt dir sicherlich sofort ins Auge was falsch ist ;)
 
Oh, sorry. Habe mich verschaut. Habe die Spaltenliste für die Werte gehalten.. ;)

Lass dir den Query doch einfach mal mittels echo ausgeben und schau, ob alle Werte eingetragen sind. Und schreib ein Leerzeichen hinter das VALUES, das mögen manche DBMS' auch nicht, wenn's direkt dran geklatscht ist.
 
Zurück