nessun script gia' fatto perchè tutti usano captcha indiscriminatamente senza valutare l'impatto dei disabili.
Una soluzione possibile è via asp.net quindi ripeto, se il tuo sito è un guestbook personale, fai prima a mettere un codice di sicurezza in chiaro senza immagini distorte
un es. veloce
'ti prendi un generatore di password, questo è un esempio:
non uno script sicuro al 100% ma se qualcuno ha tempo da perdere per creare uno script che parsi l'html del tuo login solo per inserire commenti in automatico nel tuo guestbook, be' allora gli devi avere fatto qualcosa di malecodice:'presa al volo da 4GuyfromRolla, ce ne sono tante anche qui nel forum basta che cerchi Function generatePassword( allowNumbers ) NUMLOWER = 48 ' 48 = 0 NUMUPPER = 57 ' 57 = 9 LOWERBOUND = 65 ' 65 = A UPPERBOUND = 90 ' 90 = Z LOWERBOUND1 = 97 ' 97 = a UPPERBOUND1 = 122 ' 122 = z PASSWORD_LENGTH = 6 ' initialize the random number generator Randomize() newPassword = "" count = 0 DO UNTIL count = PASSWORD_LENGTH If allowNumbers Then pwd = Int( ( NUMUPPER - NUMLOWER ) * Rnd + NUMLOWER ) Else ' generate a num between 2 and 10 ; ' if num > 4 create an uppercase else create lowercase If Int( ( 10 - 2 + 1 ) * Rnd + 2 ) > 4 Then pwd = Int( ( UPPERBOUND - LOWERBOUND + 1 ) * Rnd + LOWERBOUND ) Else pwd = Int( ( UPPERBOUND1 - LOWERBOUND1 + 1 ) * Rnd + LOWERBOUND1 ) End If End If newPassword = newPassword + Chr( pwd ) count = count + 1 Loop generatePassword = newPassword End Function 'Crei una password e la inserisci nelle session '(passando true crei una password alfanumerica, 'altrimenti è solo alfabetica Session("fakeCaptcha") = generatePassword(true) .... + avanti nell'html inserisci un input di controllo CODICE DI CONTROLLO: <%=Session("fakeCaptcha")%> <label for="controllo">Riscrivi qui il codice di controllo <input type="text" value="" id="controllo" name="controllo" /> <input type="submit" id="azione" name="azione" /> </label> al submit controlli if Request("azione") <> "" then if Request("controllo") = Session("fakeCaptcha") then 'ok pallino entra else ' levati di ulo end if end if

Rispondi quotando