Zum Inhalt springen

PHP - Verhindern das daten doppelt in MYSQL datenbank eingetragen werden


Empfohlene Beiträge

Geschrieben

Hallo...

Habe ein PHP Script geproggt das Daten aus einer HTML Form in eine MYSQL Datenbank schreibt.

Es handelt sich um Folgende Daten:

Benutzername, Password, E-Mailadresse

Meine Frage:

Wie kann ich Verhindern das man 2 mal den selben Benutzernamen über das Script eintragen kann..... (vieleicht auch e-mail addy)?

Es sol eine Fehlermeldung ausgegeben werden wie z.B: Name schon vorhanden!"

Bitte um ein Code Beispiel...

Warscheinlich ist das Problem mit einer IF abfrage zu lösen... kenne mich in PHP aber noch nicht so gut aus

:(

Bitte um Hilfe ...

Geschrieben

Mach doch vor dem Insert grundsaetzlich einen Select auf die Tabelle nach dem Benutzernamen und suche in dem Array, dass Du zurueckbekommst die Benutzerdaten durch. Befindet sich darin einer, der mit dem eingegebenen Benutzernamen uebereinstimmt, brichst Du ab (also kein Insert) und gibst eine Fehlermeldung aus.

Geschrieben

du könntest auch nen "unique index" über den benutzernamen und noch nen "unique index" über die email spalte legen.

so fährt du auf jeden fall 100% sicher!

müsst dir dann nur noch die fehlercodes beim ausführen des sqls abfragen und falls es der code von duplicate key ist dann deine fehlermeldung "User doppel" o.ä.

Original geschrieben von FisyX

kannst du dazu ein beispiel posten... brauche den quellcode ;)

selbst ist der Mann,

wenn du nicht mehr weiter kommst kannste wieder fragen!

  • 4 Wochen später...
Geschrieben

$sql="SELECT FROM tabelle WHERE benutzername='$name'";
$res=mysql_query($sql,$db);
if ($res && mysql_num_rows($res)) {
echo "Dieser Benutzername existiert bereits.";
mysql_free_result($res);
} else {
$sql="INSERT INTO tabelle (email,benutzername,password) VALUES ('$email','$benutzername','$password')";
mysql_query($sql,$db);
if(!mysql_errno($db) {
echo "Daten übernommen";
} else {
echo 'Fehler bei Übernahme der Daten<i>'.mysql_error($db).'</i>';
}
}
[/PHP]

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...