Verfasst: 29.11.2005 18:21
Hallo snakepilsken,snakepilsken hat geschrieben:Aber da man ja bei jeder Anfrage diesen 5-stelligen Code eingeben muß und dieser jedes Mal anders ist, kann doch sowas nciht passieren oder ?
es wird zwar deutlich erschwert, aber besonders schwierig zu knacken ist das benutzte Captcha nicht; und die Spammer lernen halt auch immer dazu... Aber um Dich zu beruhigen: Wenn ich von der (relativen) Sicherheit dieses Kontaktformulares nicht überzeugt wäre, würde ich es bestimmt nicht benutzen.

In diesem Fall kannst Du je nach Deinen eigenen Vorlieben jedes Kontaktformular auf das Datenbankfeld lastcontact zugreifen lassen, oder Du führst für contact_form2.php und contact_form3.php mittels SQL-Befehl zwei zusätzliche Felder ein, z.B. lastcontact2 und lastcontact3. (In diesem Fall müsstest Du auch den php-Code von contact_form2 und 3 entsprechend anpassen: Wo in contact_form2 "lastcontact" steht, müsstest Du "lastcontact2" hinschreiben, und das "lastcontact" in contact_form3.php müsstest Du mit "lastcontact3" ersetzen.)snakepilsken hat geschrieben:Ich habe das Kontaktformular für 3 unterschiedliche Zwecke auf einem Board im Einsatz. ... In der Art etwa contact_form.php, contact_form2.php, contact_form3.php
Im erstgenannten Fall können halt die Formulare 2 und 3 auch für 30 Sekunden nicht benutzt werden, nachdem über das Formular 1 eine Anfrage abgeschickt worden ist. Wenn Du letzteres verwirklichst, gilt für jedes Formular ein eigener Countdown, bis es wieder benutzbar wird.
Einfacher zu verwirklichen und vom Sicherheitsstandpunkt genauso gut ist sicher Variante 1, also dass jedes Formular auf das Datenbank-Feld lastcontact zugreift. Dann brauchst Du auch im php-Code nichts zusätzlich verändern.
Ich persönlich habe das Zeitlimit in meinem Board übrigens auf zwei Minuten erhöht, weil ich sowieso nur alle paar Tage mal eine Kontaktanfrage erhalte. Einstellbar ist das in folgender Zeile:
Code: Alles auswählen
$stime = time() + 30; //hier wird das Flood-Intervall in Sekunden festgelegt