Hallo,
ich programmiere gerade eine Webseite auf der man sich registrieren kann. Allerdings habe ich dabei Schwierigkeiten.
Ich überprüfe zunächst ob es bereits einen Account mit dieser Email-Adresse gibt. Falls nicht, soll der Account angelegt werden. Falls doch, dann soll eine Fehlermeldung kommen.
Er macht aber nicht das was er soll. Er erstellt in der Datenbank den User obwohl er schon existiert. D.h. mehrere Einträge mit der selben Email-Adresse.
Und wenn ich mit mysqli_num_rows() es versuche, dann kommt diese Fehlermeldung:
Warning: mysqli_num_rows() expects parameter 1 to be mysqli_result, boolean given in C:\xampp\htdocs\money_maker\content\user\reg\sign_send.php on line 45
Hier ist der Code:
Habt ihr einen Rat für mich wie ich dieses Problem beheben kann?
Nochmal um sicher zu gehen: Die Daten werden in der Datenbank gespeichert, dass ist nicht das Problem. Das Problem liegt in der Überprüfung ob ein Account mit dieser Email Adresse bereits registriert ist.
Bitte um schnelle Antworten...
ich programmiere gerade eine Webseite auf der man sich registrieren kann. Allerdings habe ich dabei Schwierigkeiten.
PHP:
$sql_check = "SELECT * FROM user WHERE mail = $mail";
$result = mysqli_query($con, $sql_check);
if($result == false) {
//--Daten in Tabelle eintragen: user--
$sql = "INSERT INTO user (mail, passwort, nummer) VALUES ('".$mail."', '".$pw."', '')";
//--Daten in Tabelle eintragen: reg_log--
$sql_reg = "INSERT INTO reg_log(reg_time, last_log, anz_log) VALUES ('".$reg_time."', '', 0)";
} else {
echo "Es existiert bereits ein User mit dieser Email-Adresse.";
exit();
}
Ich überprüfe zunächst ob es bereits einen Account mit dieser Email-Adresse gibt. Falls nicht, soll der Account angelegt werden. Falls doch, dann soll eine Fehlermeldung kommen.
Er macht aber nicht das was er soll. Er erstellt in der Datenbank den User obwohl er schon existiert. D.h. mehrere Einträge mit der selben Email-Adresse.
Und wenn ich mit mysqli_num_rows() es versuche, dann kommt diese Fehlermeldung:
Warning: mysqli_num_rows() expects parameter 1 to be mysqli_result, boolean given in C:\xampp\htdocs\money_maker\content\user\reg\sign_send.php on line 45
Hier ist der Code:
PHP:
$sql_check = "SELECT * FROM user WHERE mail = $mail";
$result = mysqli_query($con, $sql_check);
if(mysqli_num_rows($result) > 0) {
echo "Es existiert bereits ein User mit dieser Email-Adresse.";
exit();
} else {
//--Daten in Tabelle eintragen: user--
$sql = "INSERT INTO user (mail, passwort, nummer) VALUES ('".$mail."', '".$pw."', '')";
//--Daten in Tabelle eintragen: reg_log--
$sql_reg = "INSERT INTO reg_log (reg_time, last_log, anz_log) VALUES ('".$reg_time."', '', '0')";
}
Habt ihr einen Rat für mich wie ich dieses Problem beheben kann?
Nochmal um sicher zu gehen: Die Daten werden in der Datenbank gespeichert, dass ist nicht das Problem. Das Problem liegt in der Überprüfung ob ein Account mit dieser Email Adresse bereits registriert ist.
Bitte um schnelle Antworten...