UNIQUE Index natürlich schon – aber bitte nicht in Text-Fehlermeldungen rumsuchen, sondern den nummerischen Fehlercode entsprechend auswerten.
UNIQUE Index habe ich auf nickname und emailadresse gesetzt! Mein Script sieht nun so aus:
$stmt = $mysqli->prepare("INSERT INTO web_users (nickname, emailadresse) VALUES (?, ?)");
$nickname = $_POST["nickname"];
$emailadresse = $_POST["emailadresse"];
$stmt->bind_param("ss", $nickname, $emailadresse);
if(!$stmt->execute()){
echo $mysqli->errno;
}
wenn ich nun versuche zwei gleiche eMail Adressen Einzutragen bekomme ich diese Fehlermeldung "1062"
Wie kann ich jetzt mit dieser Fehlermeldung hier weiter arbeiten?
if(empty($_POST['emailadresse'])){
$errors[] = "Bitte geben sie Ihre eMail Adresse an";
} elseif (filter_var($_POST['emailadresse'], FILTER_VALIDATE_EMAIL) == false) {
$errors[] = "Bitte geben Sie ein gültige eMail Adresse an";
}
Die oben genannte Fehlermeldung bezieht sich nun auf beide Einträge oder nur eMail Adresse bzw. Benutername? Kann ich hier überhaupt einen Unterschied machen?
Sprich dass ich dann ausgeben lasse:
- Benutzername bereits vorhanden
- eMail Adresse bereits vorhanden