Test Foro de elhacker.net SMF 2.1

Programación => Desarrollo Web => Mensaje iniciado por: Leguim en 18 Julio 2020, 17:45 PM

Título: [Pregunta]: Enviar recaptcha google por ajax
Publicado por: Leguim en 18 Julio 2020, 17:45 PM
Buenas,

estoy intentando enviar un recaptcha de google que creo que es la v2 por medio de ajax, realmente no se bien como puedo enviar y luego recibir los datos correspondientes.

Para un ejemplo, la manera en que valido los recaptcha si es un formulario es hacerlo de la siguiente manera:

HTML
Código (html) [Seleccionar]

<form method="post">
       <input type="text" name="texto">
       <div class="g-recaptcha input_captcha" data-sitekey="<?php echo(SITE_KEY); ?>"></div>
       <button type="submit" name="enviar">enviar</button>
</form>


PHP
Código (php) [Seleccionar]

<?php
if(isset($_POST['enviar'])
{
      
$captcha_response $_POST['g-recaptcha-response'];
      
      if(!empty(
$captcha_response))
      {
               
$captcha_results Get_Captcha($captcha_response);

               if(
$captcha_results['success'] == true)
               {
                       echo 
"el dato fue enviado correctamente!";
               }
               else
               {
                        echo 
"el captcha no se completó de una forma correcta.";
               }
      }
      else
     {
             echo 
"es requerido que completes el captcha";
     }
}
?>



Como puedo entonces hacer una función JS que envíe una solicitud hacia un fichero por medio de ajax donde por parametro se envíe el captcha a evaluar?

Código (javascript) [Seleccionar]

function Enviar_Captcha(captcha_response)
{
                        $.ajax({
url: 'fichero.php',
type: 'POST',
dataType: 'html',
data: {captcha_response},
})

.done(function(results)
{
$('body').append(results);
})
}


Como dije antes, no se como enviarlo por parametro en una función que realizará la petición por ajax y luego como puedo recibir ese "captcha_response" para evaluarlo en dicho fichero..

Gracias!