Social

Google anunció hace un par de meses un nuevo servicio para evitar los ataques y el SPAM en tu pagina web a través de “NO CAPTCHA ReCAPTCHA“. Seguro que ya conoces el sistema: Demostrar que el usuario no es un robot y poder enviar formularios, por ejemplo. Sigue este tutorial para insertarlo en tu Web de una forma sencilla!

Primero tendremos que ir a la pagina web de Google para crear nuestro identificador.
Entraremos en la web en este enlace, y añadiremos una etiqueta (por ejemplo: Mis Webs) y abajo escribiremos los dominios donde queramos que el Captcha sea efectivo, y haremos click en registro.

 

Una vez hecho esto, recibiremos dos codigos: La clave, y la clave secreta. Tenedlas a mano porque las necesitareis en un momento.

A continuación añadiremos el código en el archivo HTML donde tengamos el formulario que queremos “proteger”.

Dentro de la etiqueta <head> añadiremos la siguiente linea, que llama al script de Google para mostrar el captcha:

<script src='https://www.google.com/recaptcha/api.js'></script>

Una vez hecho, iremos a donde queramos colocar el Captcha, normalmente justo encima de los botones de Submit (Enviar), pero dentro del Form.  Justo ahi pegaremos este codigo y substituiremos donde pone CLAVE, por la clave antes mencionada:

<div data-sitekey="CLAVE"></div>

Ahora nos toca ir a la parte “servidor“, osea al archivo PHP que procesa el formulario y lo envía.
Aqui pondremos en la parte que más nos convenga, el siguiente codigo. Lo que hace es comprobar si el usuario ha resuelto el captcha correctamente antes de enviar. Tenemos que substituir donde CLAVEPRIVADA, por la clave antes mencionada.

//CAPTCHA
$captcha=$_POST[‘g-recaptcha-response’];
$response=file_get_contents(“https://www.google.com/recaptcha/api/siteverify?secret=CLAVEPRIVADA&response=”.$captcha.”&remoteip=”.$_SERVER[‘REMOTE_ADDR’]);remoteip$
$response = json_decode($response, true);
if($response[“success”] === true){
echo “Captcha Ok”;
}else{
echo “Captcha Fail”;}

En la parte que dice “Captcha Ok” podemos poner el codigo que envia el correo electronico, por ejemplo, y en la parte que pone “Captcha Fail“, el mensaje de error que queremos que se le muestre al usuario.

Una vez hecho ya tendremos funcionando nuestro CAPTCHA y podemos decir Adiós al SPAM.
Un saludo!!


Xavi Gonzalez

Actualmente DevOps Engineer en MotoGP (Dorna Sports). Apasionado de GNU/Linux y del software libre. Me gusta trastear con cualquier gadget, y rodar en moto.

0 comentarios

Deja una respuesta

Marcador de posición del avatar

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*