PHP - Gästebuch Antispam

  • Hallo, hoffentlich könnt ihr mir helfen...
    Seit geraumer Zeit wird mein Gästebuch mit tollen Werbeanzeigen
    zugespammt... das nervt gewaltig.

    Was ich bis jetzt zur Spam-Abwehr gemacht habe:

    1) Wenn das Kommentarfeld leer bleibt, dann wird die Nachricht nicht
    abgeschickt, das PHP-Script sollte dann mit einem exit(0) beenden.
    Tut es auch soweit.

    Leider war's damit ja nicht gegessen, denn das Kommentarfeld ist ja meinstens voll mit 'Cialis, Viagra, Buy... blablup'.
    Also denke ich mir: Eine Checkbox rein...
    Die muss aktiviert sein, also 'true', wenn der Eintrag geschrieben werden soll.

    Das hab ich dann so gemacht:

    2.) Im GB selber:

    Code
    <input type="checkbox" name="nospam"> <font color="red">Bitte bestätigen.</font>

    und in PHP:

    Code
    $nospam=nospam;
    ...
    if (nospam=="false"){
    exit(0);
    }

    Leider klappt das nicht :(
    Vielleicht habt ihr eine Idee, wie es funktionieren könnte,
    oder eine andere Möglichkeit parat.

    Freue mich auf Antworten,
    GammaRay

    Blut und Eisen!

  • hab das bei mir so gelöst, dass der button zum abschicken sich erst nach 10 sekunden aktiviert hat. seitdem ist jeder spam weg :]


    So sollte es eigentlich gehn:

    <input type="checkbox" name="nospam" value="yes" checked="false"> <font color="red">Bitte bestätigen.</font>


    $nospam=$_POST['nospam'];
    ...
    if (nospam<>'yes'){
    exit(0);
    }

    We are using it to make a difference.

    2 Mal editiert, zuletzt von IceFire (8. Mai 2006 um 19:29)

  • So, das hat geklappt!

    Ich musste nur das Attribut checked="false" weglassen,
    weil FF das sonst als 'checked' wertet...?

    Wofür steht eigentlich der Operator <>?... geht das nicht mit !=

    Blut und Eisen!

  • eine alternative wäre auch noch grafiken mit buchstaben und zahlen drin generieren lassen. dieses "passwort" muss der user dann eintragen um überhaupt posten zu dürfen.

    [Blockierte Grafik: http://download.chaos-raid.de/xhtml.gif]
    AMD Athlon64 3200+ :: MSI K8N Neo2 :: AOpen Aeolus 6800U :: G-e-i-l 1024MB RAM (DDR400, CL 2.5) :: Maxtor 120GB :: Hitachi 160GB :: NEC3520 DVD-RW :: AOpen 52x CD-R :: Creative Audigy :: Razer Diamondback

    [ Alan Wake ]

  • Ich nehme auch an, das ist nicht allzu sicher...
    Aber diesen Buchstabengenerator zu coden stelle ich mir weitaus
    schwerer vor... Ich bin jedenfalls erstmal zufrieden :]

    Blut und Eisen!

  • das ist billig musst nur wissen wie du ein bisschen in php malen kannst, dann schreibst dir ein script das dir nen random string erstellt und diesen auf ein bild malt auf dem du zuvor ein paar bunte linien gemalt hast, um es bots mit ocr zu erschweren. ist natürlich eine programmiertechnische herausforderung ;)

    [Blockierte Grafik: http://download.chaos-raid.de/xhtml.gif]
    AMD Athlon64 3200+ :: MSI K8N Neo2 :: AOpen Aeolus 6800U :: G-e-i-l 1024MB RAM (DDR400, CL 2.5) :: Maxtor 120GB :: Hitachi 160GB :: NEC3520 DVD-RW :: AOpen 52x CD-R :: Creative Audigy :: Razer Diamondback

    [ Alan Wake ]

    Einmal editiert, zuletzt von Voodoo66 (8. Mai 2006 um 23:54)

  • achso, das mit checked war mir neu....

    das <> ist gleichbedeutend mit !=, es gibt sprachen, bei den beides funzt, und manche, bei denen nur eines von beiden geht. bei phph geht afaik beides.

    We are using it to make a difference.

  • Komischerweise klappte es auf einmal nicht mehr und ich musste eine
    Änderung vornehmen:

    Code
    if (nospam!=true){
                                               echo "Bitte den Haken unter dem Formular setzen!<br><a href='gb.php'>Zurück</a>";
                                               exit(0);
                                            }


    Für die Interessierten!

    Blut und Eisen!