+34 911 599 883

+34 911 895 172

Implementar Google ReCAPTCHA V3 en un formulario php

Antes de comenzar a implementar la validación de Google reCAPTCHA en tu formulario PHP, es crucial asegurarse de tener las claves necesarias. Este proceso se realiza a través del Panel de administrador de reCAPTCHA, al cual se accede con la cuenta correspondiente a la página que deseamos proteger.

Una vez dentro del panel de administración, si ya hemos iniciado sesión con la cuenta asociada a nuestra página, podemos dirigirnos directamente a este enlace. Al ingresar, completaremos el formulario solicitado, lo que nos permitirá obtener tanto la clave pública como la clave privada necesarias para la implementación en nuestro formulario.

El primer paso técnico para integrar la validación de reCAPTCHA en nuestro formulario PHP es agregar un fragmento de código JavaScript al encabezado de la página donde se encuentra dicho formulario. Este script se encarga de cargar el servicio de reCAPTCHA y prepararlo para su uso en el formulario. Es importante reemplazar la cadena “CLAVE_PUBLICA” en el código por la clave pública específica de nuestro sitio web, proporcionada por Google.

<script src='https://www.google.com/recaptcha/api.js?render=CLAVE_PUBLICA'> </script> <script> grecaptcha.ready(function() { grecaptcha.execute('CLAVE_PUBLICA', {action: 'ejemplo'}) .then(function(token) { var recaptchaResponse = document.getElementById('recaptchaResponse'); recaptchaResponse.value = token; });}); </script>

Además del script JavaScript, es necesario agregar este campo de entrada oculto en nuestro formulario. Este campo será utilizado para almacenar la respuesta generada por reCAPTCHA.

<input id="recaptchaResponse" name="recaptcha_response" type="hidden" />

Ahora, pasando al archivo PHP que procesa los datos del formulario, debemos incorporar el siguiente código. Este fragmento se encarga de verificar la respuesta recibida del servicio de reCAPTCHA. Aquí, nuevamente, debemos reemplazar la cadena “CLAVE_PRIVADA” por la clave privada correspondiente a nuestro sitio web, proporcionada por Google.

$recaptcha_url = 'https://www.google.com/recaptcha/api/siteverify'; $recaptcha_secret = 'CLAVE_PRIVADA'; $recaptcha_response = $_POST['recaptcha_response']; $recaptcha = file_get_contents($recaptcha_url . '?secret=' . $recaptcha_secret . '&response=' . $recaptcha_response); $recaptcha = json_decode($recaptcha); if($recaptcha->score >= 0.7){ // Añade aquí el código que desees en el caso de que la validación sea correcta }else{ // Añade aquí el código que desees en el caso de que la validación no sea correcta }

Una vez realizado este proceso, habremos implementado con éxito la validación de reCAPTCHA v3 en nuestro formulario PHP. Recuerda que puedes ajustar el valor de puntuación (0.7 en este ejemplo) según tus necesidades de seguridad y tolerancia al riesgo.

Con estas acciones, fortalecerás la seguridad de tu formulario PHP y reducirás significativamente el riesgo de abusos y spam. ¡Protege tu sitio web hoy mismo con Google reCAPTCHA!