Wenn CAPTCHA aus der Cache kommt...

2 Nov 2008 um 23:08 - PHP

Fast in jedem Kontaktformular wird Antispam-Test verwendet. Es könnte sowohl simple Rechenaufgabe als auch komplexe Text mit den verschiedenen graphischen Störungen sein. Captcha (Completely Automated Public Turing test to tell Computers and Humans Apart) wird meistens automatisch generiert und der Text wird mit dem Hintergrund gespeichert.

Dieses Bild kommt dann in HTML-Tag "img". Meistens sieht es in Code irgendwie so aus:

<img src='mysite.com/captcha.php'>

Aber mysite.com/captcha.php ist eine Internetadresse und der Browser versucht sie in Cache zu speichern. Deshalb wird im Formular immer das gleiche gespeicherte Bild mit Captcha-Text gespeichert. Dieses Problem taucht nicht auf, weil jedes Formular meistens nur einmal gebraucht wird - Anfrage schicken, Seite in Suchmaschine eintragen usw.

Als mögliche Lösung kann man eine zusätzliche fiktive Variable hinzufügen. Für Browser sowie für Suchmaschinen sind captcha.php?2 und captcha.php?4 2 vershiedene Internetadressen. Lösung:

<img src="mysite.com/captcha.php?<?php echo rand(0,1000) ?>">
Kommentare

Bisland keine Kommentare - sei der erste!


© 2008 Anton Pavlushko - Webentwicklung, Internetmarketing und Suchmaschinenoptimierung (SEO)

0.0051829814910889 sec