![]() |
|
Scrivere il codice di sicurezza CAPTCHA in Php
Esaminiamo in questo articoli come scrivere il codice CAPTCHA (acronimo di Completely Automated Public Turing test to tell Computers and Humans Apart, ovvero test di turing pubblico e completamente automatico per distinguere computer e umani), in PHP, onde gestire i motori di SPAM che invadono quotidianamente i nostri moduli HTML.
<?
session_start();
$stringa = md5(microtime());
$risultato = substr($stringa, 0, 5);
$immagine = imagecreatefromjpeg("captcha.jpg");
$testo = imagecolorallocate($immagine, 255, 255, 255);
imagestring($immagine, 3, 20, 10, $risultato, $testo);
$_SESSION['CONTROLLO'] = $risultato;
header("Content-type: image/jpeg");
imagejpeg($immagine);
?>
Creiamo poi un'immagine colorata di dimensioni, più o meno, 80X30 pixel e chiamiamola captcha.jpg.Richiamiamo poi, all'interno del modulo HTML, l'immagine come segue: <img src="captcha.php">Il sistema è pronto, ma spieghiamo cos'abbiamo fatto: session_start();apriamo una sessione per salvare il valore del codice di controllo, onde poterne recuperare il valore in fase di validazione dei campi del form HTML; $stringa = md5(microtime()); $risultato = substr($stringa, 0, 5);creiamo una stringa che estrae un valore alfanumerico casuale di 5 caratteri; $immagine = imagecreatefromjpeg("captcha.jpg");
recuperiamo l'immagine JPG da utilizzare per il CAPTCHA;
$testo = imagecolorallocate($immagine, 255, 255, 255);impostiamo il testo di colore bianco, onde distinguerlo (sia pur un po a fatica) all'interno dell'immagine colorata; imagestring($immagine, 3, 20, 10, $risultato, $testo);impostiamo, rispettivamente, la grandezza del testo e la distanza dal left e dal top dei margini interni dell'immagine; $_SESSION['CONTROLLO'] = $risultato;recuperiamo il valore del codice di controllo e lo memorizziamo in usa sessione, o volendo andrebbe bene anche un cookie; header("Content-type: image/jpeg");
modifichiamo le intestazioni della pagina in modo da poterla richiamare come se fosse realmente un file JPG;
imagejpeg($immagine);mostriamo l'immagine. |
IN EVIDENZA
Effetto ombra su testo con Photoshop
Guadagna col tuo sito grazie a TradeD...
Guida XHTML
Riscrivere le URL con Asp
Riavviare IIS
HTTP 500 internal server error
Generare password casuali in Javascri...
Errore 80004005: Cannot update. Datab...
Introduzione ad Ajax ed Asp con Jscri...
Referenze dei Tag Html
Stringhe di connessione via ODBC e Ol...
Referenze dei fogli di stile Css
Le espressioni regolari in Javascript
|
||||
© 2001/2010 lukeonweb.net - A cura di Luca Ruggiero, Partita IVA 05564851219 -
Privacy |
Pubblicità |
Contatti
| |||||