Überprüfung ob Name oppelt ist

Golz

Erfahrenes Mitglied
Hi,

PHP:
INSERT INTO `klassensprecher` (`Name`, `Stimmen`, `Gewonnen`) VALUES ('".$_POST['klsname']."', '0', '0')

hiermit fürde ich einen Datensatz in Meine DB ein.

was muss ich ändern, um in dieser Abfrage zu überprüfen ob es diesen Datensdatz, den ich einfügen will, schon gibt?

Gruß

Patrick
 
Wenn jeder Name nur einmal vertreten sein kann/darf, dann könntest Du die Spalte "Name" mit einem Primary Key versehen. Damit wird es unmöglich, einen weiteren Datensatz mit dem selben Namen hinzuzufügen!

redlama
 
Meine ID iss halt schon Primary.

Iss das egal (Wurscht ^^ ) wenn ich die auch noch Primary formatiere?
 
Re: Überprüfung ob Name Doppelt ist

Vorher ein Select mit den entsprechenden Daten versuchen? Wenn mysql_num_rows() zuruecklieftert gibts den DS noch nicht.
Mensch tu dir und den Lesern hier nen Gefallen und les das was du abschickst vorher nochmal durch. "oppelte Namen" klingt nicht so prickelnd und stimmt die potentiellen Helfer auch nicht besonders freundlich =P

Gruß
Frank
 
redlama hat gesagt.:
Wenn jeder Name nur einmal vertreten sein kann/darf, dann könntest Du die Spalte "Name" mit einem Primary Key versehen. Damit wird es unmöglich, einen weiteren Datensatz mit dem selben Namen hinzuzufügen!

redlama
Stimmt! hatte ich garnicht drangedacht :)

Golz hat gesagt.:
Meine ID iss halt schon Primary.

Iss das egal (Wurscht ^^ ) wenn ich die auch noch Primary formatiere?


Ein UNIQUE sollte doch aber reichen oder?
 
Das wird dann nichts!
Da die ID sicher automatisch vergeben wird, würde es niemals eine Dopplung geben.
Bsp:
ID = 1, Name = redlama
ID = 2, Name = redlama
Da ist zwar Name identisch, da aber die ID unterschiedlich ist, würde (wenn der Primary Key über beide Felder gehen würde) MySQL diesen Eintrag nicht als doppelt werten.

Du könntest alternativ auch einfach ein SELECT Statement ausführen, mit dessen Hilfe Du den Namen, den Du hinzufügen willst, in der Tabelle suchst.
Gibt es einen Treffer, wird kein Eintrag vorgenommen. Gibt es keinen Treffer, kannst Du den Eintrag durchführen.

redlama
 
Zuletzt bearbeitet:
Das wollte ich als nächstes Fragen, weil wenn ich die Namen Tabelle als Unique mache, kann man zwar den Namen nicht mehr eintragen aber es kommt halt eine Fehlermeldung ^^

OK thx ich werd mich wieder melden, wenn es nicht klappt ^^


Grüßle

Patrick
 
Zurück