jueves, 31 de julio de 2014

Captcha php avanzado - Google reCAPTCHA


Bienvenid@s, hoy veremos como integrar unos de los servicios que proveé Google llamado reCAPTCHA, este servicio tiene una api para desarrolladores PHP, su integración no es nada complicada y como es norma en este blog, tendremos un ejemplo funcionando a pleno rendimiento.

Google con este servicio pretende ofrecer a los desarrolladores un sistema de seguridad captcha fiable, de hecho este es el mismo sistema que utiliza Google para combatir los bots. 

Entre las principales características que podemos encontrar en este sistema captcha es el reconocimiento visual y de audio y cuatro posibles formatos de estilo:

Captcha php avanzado - Google reCAPTCHA

Un aspecto esencial para poder utilizar este sistema es que tenemos que obtener dos claves: una privada y la otra pública, esto va a ser muy fácil como veremos a continuación.

Vamos a dar de alta a una aplicación web, podéis utilizar cualquier dominio que tengáis, incluso un dominio de blogspot os puede valer, de hecho yo lo he integrado con http://php-estudios.blogspot.com, esto nos va a permitir poder probarlo en el servidor local, así que vamos a la siguiente dirección: https://www.google.com/recaptcha/intro/index.html 

Captcha php avanzado - Google reCAPTCHA




Hacéis click en botón que os aparece en la esquina superior derecha, como se puede ver en la imagen anterior. Ahora nos dirigimos a otra nueva ventana en la cual aparece el siguiente botón rojo, hacéis click en él.

Captcha php avanzado - Google reCAPTCHA
Muy bien, ahora daremos de alta a un dominio:

Captcha php avanzado - Google reCAPTCHA

Una vez hayamos incluido el dominio, hacemos click en create, esto nos pasará a nueva nueva ventana donde se encuentra la lista de dominios que podrán hacer uso de recaptcha, hacéis click en vuestro dominio y os dirigirá a otra página donde podéis ver las claves privada y pública:


Ok, ahora lo tenemos todos preparado para empezar a utilizar el sistema reCAPTCHA, los archivos con el ejemplo incluido lo podéis descargar en el siguiente enlace: reCAPTCHA 

Al principio del archivo de ejemplo recaptcha.php tenéis que incluir las claves privada y pública:

# ¡IMPORTANTE!
# Obtener las claves en https://www.google.com/recaptcha/intro/index.html
$publickey = "";
$privatekey = "";

Y ahora ejecuten recaptcha.php en el navegador y os aparecerá una ventana como la siguiente, ya con el campo captcha incluido:

Captcha php avanzado - Google reCAPTCHA


El script contiene el ejemplo de como validar el campo captcha, tanto si el captcha está vacío, como si no es válido. También viene como estilizar el campo captcha con uno de los cuatro temas que vimos anteriormente, esta parte se encuentra en el head del documento en la parte Javascript.


No hay comentarios: