- 30 Ottobre 2009
- 58
- 0
- Miglior risposta
- 0
Come creare convalidazione Captcha per un form web
[font='Georgia, Times New Roman, Times, serif']Introduzione
In questa guida cercherò di spiegarvi molto semplicemente come inserire una convalidazione captcha in un vostro form qualunque (captcha è l'acronimo di "Completely Automated Public Turing test to tell Computers and Humans Apart").
__________________
Requisiti software
Per il funzionamento di tale sistema, abbiamo bisogno di:
○ Un database MySql per il salvataggio di stringhe casuali e i rispettivi dati (data di creazione, di scadenza, etc.);
○ Nel nostro server "hostante" deve essere installato php 4.5 o superiore.
__________________
Spiegazione & svolgimento
Di seguito spiegherò i codici php e come inserirli in una nostra pagina php.
Come prima cosa dobbiamo creare una tabella di nome "validation" in un nostro database che contenga quattro colonne:
• "id" (Codice INT con auto incremento numerale);
• "url_key" (Codice generato casualmente dallo script);
• "captcha" (Stringa di numeri e lettere che comparira sulla nostra immagine);
• "expire_date" (Legge la data di creazione della form e la stampa).
Perr far ciò potete o usare il caro e vecchio navicat, o eseguire una query direttamente dal pannello sql (richiamabile dal dos con il comando mysql_ se disponiamo della versione 5.0 o superiore):
Dopodichè iniziamo con i codici veri e propi da inserire nella nostra pagina php.
Lo script che andremo a creare non utilizzerà cookie o sessioni dati per il salvataggio di informazioni per la convalidazione dei dati, ma creerà un form sql nella tabella da noi creata all'apertura della pagina web: la pagina in cui è salvato il form alla sua visualizzazione genererà una stringa casuale che verrà salvata nel database, al quale verrà associata una chiave casuale univoca.
Inseriamo quindi nella nostra pagina web (prima del tag <html> se possibile, oppure tra i tag <header> e </header>):
Notare in quest' ultimo codice la generazione casuale di alfanumerici Esadecimali. Concetto molto semplice e allo stesso tempo complesso da tradurre in codici.
Ora passiamo alla creazione del codice casuale e del form con richiesta di convalida.
Quindi sempre prima del tag <html>, inseriamo il codice:
Ora passiamo all'azione diretta sul form:
cerchiamo il tag <form*>;
lì dove ci fa più comodo, inseriamo il tag
!Attenzione!: Nei vostri form, al 90% dei casi è già esistente l'ultimo tag <input type="submit"*>, in tal caso non inserire due volte lo stesso "tag" bensì eliminare quello nell'ultimo Codice da me fornitovi.
__________________
Conclusione
Spero che questi script siano utili a qualcuno e spiegati in modo abbastanza chiaro e semplice.
Inoltre vi informo che per alcuni script ho preso spunto da internet (come tutti del resto) e che in ogni caso non sono del tutto sicuri: consiglio per questo quantomeno di cambiare i nomi delle stringhe.
Un saluto,
Erich alias ErNabbone.
[/font]
[font='Georgia, Times New Roman, Times, serif']Introduzione
In questa guida cercherò di spiegarvi molto semplicemente come inserire una convalidazione captcha in un vostro form qualunque (captcha è l'acronimo di "Completely Automated Public Turing test to tell Computers and Humans Apart").
__________________
Requisiti software
Per il funzionamento di tale sistema, abbiamo bisogno di:
○ Un database MySql per il salvataggio di stringhe casuali e i rispettivi dati (data di creazione, di scadenza, etc.);
○ Nel nostro server "hostante" deve essere installato php 4.5 o superiore.
__________________
Spiegazione & svolgimento
Di seguito spiegherò i codici php e come inserirli in una nostra pagina php.
Come prima cosa dobbiamo creare una tabella di nome "validation" in un nostro database che contenga quattro colonne:
• "id" (Codice INT con auto incremento numerale);
• "url_key" (Codice generato casualmente dallo script);
• "captcha" (Stringa di numeri e lettere che comparira sulla nostra immagine);
• "expire_date" (Legge la data di creazione della form e la stampa).
Perr far ciò potete o usare il caro e vecchio navicat, o eseguire una query direttamente dal pannello sql (richiamabile dal dos con il comando mysql_ se disponiamo della versione 5.0 o superiore):
PHP:
Perfavore,
Entra
oppure
Registrati
per vedere i codici!
Dopodichè iniziamo con i codici veri e propi da inserire nella nostra pagina php.
Lo script che andremo a creare non utilizzerà cookie o sessioni dati per il salvataggio di informazioni per la convalidazione dei dati, ma creerà un form sql nella tabella da noi creata all'apertura della pagina web: la pagina in cui è salvato il form alla sua visualizzazione genererà una stringa casuale che verrà salvata nel database, al quale verrà associata una chiave casuale univoca.
Inseriamo quindi nella nostra pagina web (prima del tag <html> se possibile, oppure tra i tag <header> e </header>):
PHP:
Perfavore,
Entra
oppure
Registrati
per vedere i codici!
Notare in quest' ultimo codice la generazione casuale di alfanumerici Esadecimali. Concetto molto semplice e allo stesso tempo complesso da tradurre in codici.
Ora passiamo alla creazione del codice casuale e del form con richiesta di convalida.
Quindi sempre prima del tag <html>, inseriamo il codice:
PHP:
Perfavore,
Entra
oppure
Registrati
per vedere i codici!
Ora passiamo all'azione diretta sul form:
cerchiamo il tag <form*>;
lì dove ci fa più comodo, inseriamo il tag
PHP:
Perfavore,
Entra
oppure
Registrati
per vedere i codici!
!Attenzione!: Nei vostri form, al 90% dei casi è già esistente l'ultimo tag <input type="submit"*>, in tal caso non inserire due volte lo stesso "tag" bensì eliminare quello nell'ultimo Codice da me fornitovi.
__________________
Conclusione
Spero che questi script siano utili a qualcuno e spiegati in modo abbastanza chiaro e semplice.
Inoltre vi informo che per alcuni script ho preso spunto da internet (come tutti del resto) e che in ogni caso non sono del tutto sicuri: consiglio per questo quantomeno di cambiare i nomi delle stringhe.
Un saluto,
Erich alias ErNabbone.
[/font]