Ashura: Gästebuch

Beitrag lesen

Hallo John.

validiere alle Eingaben über entsprechende Regex,

Diese sollte aber so allgemein wie möglich gehalten sein, da man ansonsten mehr schadet als hilft.

Außerdem ist nicht einmal zwangsläufig ein regulärer Ausdruck erforderlich; ich z. B. prüfe in meinem Gästebuch E-Mail-Adressen lediglich auf das Vorhandensein mindestens eines Punktes, genau eines Klammeraffens und darauf, dass der letzte Punkt in der Adresse nicht vor dem Klammeraffen auftritt.

l
asse keine eingaben mit bestimmten zeichen zu"<>".

Hm, warum? Wenn du htmlspecialchars oder strip_tags nutzt, musst du dir hierüber keine Gedanken machen. Um deine Datenbank (in welcher Form sie auch immer besteht) portabel zu halten, solltest du genannte Methoden erst bei der Ausgabe anwenden. (Die Datenbank hat schließlich nichts mit HTML am Hut.)

Speichere IP-Adressen für einen Tag-> um doppelpostings zu verhindern.

Und wenn nun jemand noch schnell eine Ergänzung zu seinem Kommentar vornehmen möchte?

(ich weiß das bringt nix bei denen die sie ständig wechseln)

Und gerade Spambots wechseln innerhalb von Sekundenbruchteilen die IP …

Erzeuge nach dem Eingeben der Daten eine Vorschau die erst vom Benutzer bestätigt werden muss...

Das ist momentan in der Tat eine der effizentesten Methoden zur Spamabwehr überhaupt. Seit ich eine Vorschaufunktion in mein Gästebuch eingebaut habe, habe ich nicht einen einzigen Spameintrag erhalten.

Ja ähm hat jm. ne idee was ich noch machen könnte???

Ja: Richte eine Freigabefunktion ein, welche es dir ermöglicht, in Ruhe alle Einträge durchzuschauen und nur dann freizugeben, wenn du den Eintrag eindeutig nicht als Spam klassifizierst.

Einen schönen Sonntag noch.

Gruß, Ashura

--
sh:( fo:} ch:? rl:( br: n4:~ ie:{ mo:| va:) de:> zu:} fl:( ss:) ls:[ js:|
„It is required that HTML be a common language between all platforms. This implies no device-specific markup, or anything which requires control over fonts or colors, for example. This is in keeping with the SGML ideal.“
[HTML Design Constraints: Logical Markup]