Volevo proporvi un semplice captcha in Javascript, per sapere cosa ne pensavate, soprattutto sulla sua validità.
Si basa sul principio che chi attacca un sito va a leggere ciò che compare nel HTML o al massimo una immagine, ma ciò che non è presente teoricamente non riesce a leggerlo.
Il numero "captcha" viene generato "lato client" tramite JS, e immesso all’interno di un campo input hidden.
Il controllo è doppio:
- lato client con javascript per controllare la corrispondenza tra quanto inserito e quanto auto-generato (evento onload)
- lato server con i due campi che arrivano url.captcha e url.captchaHidden
Conto sulla vostra opinione.
<script language="javascript">
function myLayer (x){
//individuo l’oggetto
if(document.layers){ // browser="NN4";
lay=document.layers[x];
}
if(document.all){ // browser="IE";
lay=eval("document.all." + x);
}
if(!document.all && document.getElementById){ // browser="NN6+ or IE5+ if you’re willing to dump the !document.all stuff";
lay=document.getElementById(x);
}
return lay;
}
function fnCaptcha(){
var numero=Math.random()*7*666;
var numero=Math.floor(numero);
myLayer("captchaNumber").innerHTML = numero;
document.frmCaptcha.captchaHidden.value = numero;
}
function fnCaptchaCheck(f){
if ((f.captcha.value == "") || (f.captcha.value == f.captchaHidden.value)){
alert("Numeri corrispondenti");
}else{
alert("Numeri diversi");
}
return false();
}
window.onload=function(){fnCaptcha();}
</script>
<h3>Prova Captcha</h3>
Inserisci il numero che vedi visualizzato tra le parentesi (<span id="captchaNumber"></span>)<br />
<form id="frmCaptcha" name="frmCaptcha" method="post" action="" onsubmit="return fnCaptchaCheck(this)">
<input name="captcha" type="text" id="captcha" />
<input name="captchaHidden" type="hidden" id="captchaHidden" />
<input type="button" name="Submit" value="Pulsante" />
</form>
<br />
Per aumentare il livello di sicurezza (non di molto) è consigliato fare transitare i dati via POST, quindi i campi si chiameranno: form.captcha e form.capthcaHidden.
Se trovi questo articolo su un blog diverso da “blog.merlinox.com” si tratta probabilmente di una copia non autorizzata. L’indirizzo originale di questo articolo è: Un facile CAPTCHA in Javascript scritto da Merlinox.

Purtroppo sono stato costretto a metterlo anche in questo blog:
per non fare la fine del ministro!
Che gentaccia che c’è in giro che fa queste cose e anche che paga per questo spam schifoso!
ecco perchè non riuscivo a postare dal balckbarry!
mavavavavvavavav
Sono stato costretto! Mi spiace.
I mille controlli su parole e referer erano sempre troppo pochi.
Mi arrivavano orde di commenti e mi dava fastidio fossero pubblicati finchè non ero connesso per moderarli!
Questo pare andare bene.
a
B
wrong
@juan: what is wrong?