CAPTCHA-Spamschutz in PHP entwickeln

Um lästige Spameinträge in Gästebüchern, Kontaktformularen oder Foren zu vermeiden kann man ganz einfach einen Captcha-Spamschutz installieren. Ein Captcha ist eine kleine Grafik, die eine Buchstaben-Zahlen-Folge enthält, die er Benutzer abtippen muss.

Anfangs erstellen wir das Script, dass die Grafik erzeugt. Per GET übergeben wir den abzubildenden String.

// Erstellen eine 40 mal 100 px großen Bildes
$bild = imagecreate(100,40);

// Farben definieren
$schwarz = imagecolorallocate($bild,0,0,0);
$grau = imagecolorallocate($bild,133,133,133);
$weiss = imagecolorallocate($bild,255,255,255);

// Schrift einfügen
imagestring($bild,30,20,10,$_GET['wert'],$weiss);
// Störlinien setzen
imageline($bild,0,30,100,10,$weiss);
imageline($bild,0,10,100,30,$weiss);
imageline($bild,20,0,80,40,$weiss);

// Type im Header definieren und Bild ausgeben
header(“Content-Type: image/jpeg”);
imagejpeg($bild);

// Bild löschen
imagedestroy($bild);

Dieses Script kann nun per IMG-Tag aufgerufen werden (z.b. captcha.php?wert=X49EBI). Um auf der Folgeseite die Richtigkeit des eingetragenen Wertes zu prüfen kann der Wert mit MD5 verschlüsselt werden und als hidden-Feld im Formular mitübergeben werden.

Viel Spaß ohne Spam! :)

Über admin

Herzlich Willkommen in meinem Blog. Hier will ich über meine Erfahrungen mit PHP & MySQL berichten und hilfreiche Tips bei der Programmierung geben. Viel Spaß! :)
Dieser Beitrag wurde unter PHP, Schnipsel abgelegt und mit verschlagwortet. Setze ein Lesezeichen auf den Permalink.

Hinterlasse eine Antwort

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

Du kannst folgende HTML-Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>