Heizer: Doppelte Einträge verhindern

Beitrag lesen

Liebes Forum

Ich schreibe (wiedereinmal) ein Gästebuch mit PHP und MySQL, und als freund der Handarbeit und selbstgemachten Erfahrung greife ich nicht auf vorhandene Lösungen zurück, sondern schreibe jedes semikolon selbst.

Nun bin ich am überlegen, wie ich an sinnvollsten doppelte einträge vverhindern kann (ervorgerufen z.B. durch einen klick auf den "zurück" Button, dann wird ja das formular erneut abgeschickt).

Meine Ideen waren:

  1. Den Eintrag mithilfe einer Session beim Besucher zu speichern und bei einem Gästebucheintrag abzufragen, ob dieser Eintrag schon getätigt wurde (Nachteil: Eigentlich brauche ich keine Session und möchte die besucher nicht unnötig mit Cookies belasten)

  2. Ich öffne nach dem Eintragen ein neues Fenster und schließe das alte, dadurch ist die Information bei Besucher nicht mehr vorhanden (Nachteil: Zumindest das schließen benötigt Javascript und ist damit eigentlich indiskutabel für eine Sicherheitsfunktion, auch das öffnen kann unterdrückt werden)

  3. Ich speichere einen md5 mit dem Eintrag zusammen, der aus allen Angaben außer Ordnungszahl und Zeitpunkt besteht, und lasse keine Einträge mit gleichem md5-wert zu (Nachteil: einfache geschichten wie "ich grüße euch" könnte jeder nur einmal während der Existenz des Gästebuchs schreiben, evtl. könnte ich diesen Nachteil aber ausgleichen, in dem ich den md5 nur für Einträge überprüfe, die nicht älter als einen Tag sind... o.ä.)

Jetzt wüßte ich gerne, was ihr denkt, wie es am sinnvollsten zu lösen ist. Wie macht es denn dieses Forum (denn das es diese Funktion gibt ist mir schon aufgefallen)?

Für alle anregungen dankbar

euer Heizer

p.s.: Witzigerweise hat offensichtlich gerade jetzt die Software dieses Forums einen kleinen Bug, ich konnte das Posting nicht posten, da behauptet wurde, ich hätte es bereits gepostet...