Seite 1 von 1

Vor Eintrag in MySQL Datenbank auf doppelte Einträge prüfen

Verfasst: 05.10.2005 23:37
von 1patrick
Hallo!

Ich möchte durch ein Formular Daten in eine Datenbank eintragen. Jedoch möchte ich dabei doppelte Einträge vermeiden, indem noch vor dem Eintrag (also direkt nach dem Absenden des Formulares) der eingegebe Wert mit der Datenbank abgeglichen wird ob dieser ggf. schon vorhanden ist.
Wenn ja, soll eine Fehlermeldung ausgegeben werden.

Kann mir da einer sagen was ich genau machen muss?

Verfasst: 05.10.2005 23:40
von fanrpg

Code: Alles auswählen

while($row = mysql_fetch_assoc(mysql_query("SELECT * FROM `tabelle`")))
{
if($row['altesfeld'] == $neuereintrag)
{
die("Fehlermeldung");
}
else
{
$sql = $neuereintrag;
}

Verfasst: 05.10.2005 23:40
von 1patrick
fanrpg hat geschrieben:

Code: Alles auswählen

while($row = mysql_fetch_assoc(mysql_query("SELECT * FROM `tabelle`")))
{
if($row['altesfeld'] == $neuereintrag)
{
die("Fehlermeldung");
}
else
{
$sql = $neuereintrag;
}
Das ging aber schnell, danke :D :D

Verfasst: 06.10.2005 19:02
von Pyramide
Super Lösung - die GESAMTE Tabelle ausgeben lassen, wo ein einfaches count(*) gereicht hätte...bei einer kleinen Tabelle mag das ja noch keinen großen Unterschied machen, aber viel Spaß wenn du das mit der phpbb_posts_text von phpbb.de machst.

Oder von Gaia :D

Verfasst: 06.10.2005 19:14
von fanrpg
Pyramide hat geschrieben:Oder von Gaia :D
Ich glaube das würde kein Hoster mitmachen :D

Verfasst: 06.10.2005 19:57
von PhilippK
Oder das ganze geschickt mit einem REPLACE bzw. einem INSERT ... ON DUPLICATE KEY UPDATE elegant umgehen :-)

Gruß, Philipp