kostenloser Webspace werbefrei: lima-city


Gästebuch Spam Schutz

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    davy

    Kostenloser Webspace von davy

    davy hat kostenlosen Webspace.

    Hallo !

    Ich baue gerade ein Gästebuch mit PHP.

    Wie verhindere ich am besten Spam?
    In meinem alten Gästebuch bekomme ich immer wieder Spameinträge.
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Mit Recaptcha kann man gut Spam vermeiden, ob das jetzt auch für Gästebücher geht weiß ich nicht.
    http://www.google.com/recaptcha
    Da kann man sich einfach mit der Goolge ID anmelden und los gehts.

    Beitrag zuletzt geändert: 14.11.2010 10:37:40 von oepnv-bremen
  4. Ich rate dir von Google Produkten ab.

    Du könntest dir via rand() & der GD Lib von PHP ein Captcha erstellen, das als Bild angezeigt wird.

    Google mal nach PHP Captcha howto oder ähnlichem.

    Grüße,

    Joseph
  5. Autor dieses Themas

    davy

    Kostenloser Webspace von davy

    davy hat kostenlosen Webspace.

    oepnv-bremen schrieb:
    Mit Recaptcha kann man gut Spam vermeiden, ob das jetzt auch für Gästebücher geht weiß ich nicht.
    http://www.google.com/recaptcha
    Da kann man sich einfach mit der Goolge ID anmelden und los gehts.


    Ich habe an ein einfaches Rechen-Captcha gedacht

    Schützt das denn vor Spam?

    Recaptcha gefällt mir nicht so
  6. Hier habe ich einen PHP Code gefunden:

    Rechen Captcha PHP Script

    Die rechen-captcha.php sollte am besten in den gleichen Ordner wie das Gästebuch- oder Kontaktformular ist.

    rechen-captcha.php
    <?php
    session_start();
    unset($_SESSION['rechen_captcha_spam']);
    $zahl1 = rand(10,20); //Erste Zahl 10-20
    $zahl2 = rand(1,10);  //Zweite Zahl 1-10
    $operator = rand(1,2); // + oder -
    
    if($operator == "1"){
       $operatorzeichen = " + ";
       $ergebnis = $zahl1 + $zahl2;
    }else{
       $operatorzeichen = " - ";
       $ergebnis = $zahl1 - $zahl2;
    }
    
    function encrypt($string, $key) {
    $result = '';
    for($i=0; $i<strlen($string); $i++) {
       $char = substr($string, $i, 1);
       $keychar = substr($key, ($i % strlen($key))-1, 1);
       $char = chr(ord($char)+ord($keychar));
       $result.=$char;
    }
    return base64_encode($result);
    }
    
    $_SESSION['rechen_captcha_spam'] = encrypt($ergebnis, "29jfkd921"); //Key
    $_SESSION['rechen_captcha_spam'] = str_replace("=", "", $_SESSION['rechen_captcha_spam']);
            
    $rechnung = $zahl1.$operatorzeichen.$zahl2." = ?";
    $img = imagecreatetruecolor(80,15);
    $schriftfarbe = imagecolorallocate($img,13,28,91);
    $hintergrund = imagecolorallocate($img,162,162,162);
    imagefill($img,0,0,$hintergrund);
    imagestring($img, 3, 2, 0, $rechnung, $schriftfarbe);
    header("Content-type: image/png");
    imagepng($img);
    imagedestroy($img);
    ?>


    Der Key 29jfkd921 kann/sollte geändert werden, es kann eine beliebige Zahlenkette verwendet werden.

    Quelle: http://www.stoppt-den-spam.info/webmaster/captcha-tutorial/rechen-cpatcha/captcha-php-script.html

    Beitrag zuletzt geändert: 14.11.2010 13:25:55 von nikic
  7. Einfach ein paar Buchstaben in ein Bild zu schreiben schützt dich nicht vor Spam. Zumindest schützt es dich nicht besser als ein einfaches Honeypot-Field.

    Folglich: Nutze entweder ein professionelles Captcha wie Recaptch oder begnüge dich mit einem Honeypot-Field.
  8. Alternativ zu einer reinen Rechentrap kann man auch gut Fragen mit Text stellen, die man durch leichtes Hingucken auf der Seite beantworten kann, die ein Bot aber nicht versteht. So zum Beispiel "Welche Hintergrundfarbe hat diese Seite?"
    Allgemein gilt aber, dass man besser schützt, wenn man verschiedene Spamprotectoren gleichzeitig nutzt.
    Außerdem empfehle ich htmlentities(). Das schützt zumindest vor wüster Zerstörung.
  9. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!