Jump to content
  • Sky
  • Blueberry
  • Slate
  • Blackcurrant
  • Watermelon
  • Strawberry
  • Orange
  • Banana
  • Apple
  • Emerald
  • Chocolate
  • Charcoal
Rengo

[Fix] no CAPTCHA reCAPTCHA para el registro

Recommended Posts

c33Nb.gif 
Ya que @Kmario19 no lo puede publicar, lo haré yo por que mucho lo vamos a necesitar xD
Fix y créditos para kmario.

 

El fix es el siguiente,
Cuando instalamos este mod,

 

Nos registramos, llegamos al captcha y cuando completamos se reinicia..

No lo podemos registrar,
que hacemos?
Miramos el mod el parte 2.

Buscamos:
 

$secret = "AQUI TU CLAVE SECRETA";
		$robot = new ReCaptcha($secret);
		$robot->verifyResponse($_SERVER["REMOTE_ADDR"], $_POST['g-recaptcha-response']);
		if(!$robot->success) return 'recaptcha: Hey que pasa? Demuestra que no eres un robot!';

lo reemplazamos por:

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, "https://www.google.com/recaptcha/api/siteverify");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query([
    'secret'   => "AQUI TU CLAVE SECRETA",
    'response' => $_POST['g-recaptcha-response'],
]));

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$data = curl_exec($ch);

curl_close($ch);

$response = @json_decode($data);

if(empty($response) || !$response->success) return 'recaptcha: Hey que pasa? Demuestra que no eres un robot!';

Recuerden colocar su CLAVE SECRETA.
 

Y listo, eso es todo lo que hay que hacer.

 

Hasta luego 8b2wY.gif

  • Me gusta 3
  • Gracias 1

Compartir este post


Enlace al post
Compartir en otros sitios

Yo ya lo habìa comentado en el tema original, denunciado!

 

Na, mejor asì, lo va a ver más gente

Compartir este post


Enlace al post
Compartir en otros sitios
hace 10 horas, CkOie dijo:

Funciona perfecto en mi sitio ^^

Y claro que lo reposteaste en el foro de skylium jajajja

Compartir este post


Enlace al post
Compartir en otros sitios
On 12/4/2018 at 23:00, Rengo dijo:

c33Nb.gif 
Ya que @Kmario19 no lo puede publicar, lo haré yo por que mucho lo vamos a necesitar xD
Fix y créditos para kmario.

 

El fix es el siguiente,
Cuando instalamos este mod,

 

Nos registramos, llegamos al captcha y cuando completamos se reinicia..

No lo podemos registrar,
que hacemos?
Miramos el mod el parte 2.

Buscamos:
 

$secret = "AQUI TU CLAVE SECRETA";
		$robot = new ReCaptcha($secret);
		$robot->verifyResponse($_SERVER["REMOTE_ADDR"], $_POST['g-recaptcha-response']);
		if(!$robot->success) return 'recaptcha: Hey que pasa? Demuestra que no eres un robot!';

lo reemplazamos por:

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, "https://www.google.com/recaptcha/api/siteverify");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query([
    'secret'   => "AQUI TU CLAVE SECRETA",
    'response' => $_POST['g-recaptcha-response'],
]));

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$data = curl_exec($ch);

curl_close($ch);

$response = @json_decode($data);

if(empty($response) || !$response->success) return 'recaptcha: Hey que pasa? Demuestra que no eres un robot!';

Recuerden colocar su CLAVE SECRETA.
 

Y listo, eso es todo lo que hay que hacer.

 

Hasta luego 8b2wY.gif

Hola Rengo, de que se trata este fix? hasta hace poco probe y funcionaba en registro en mi web.. es necesario aplicar el fix?

Compartir este post


Enlace al post
Compartir en otros sitios
hace 2 horas, ElBatman dijo:

Hola Rengo, de que se trata este fix? hasta hace poco probe y funcionaba en registro en mi web.. es necesario aplicar el fix?

Hola, si tenes el mismo mod y te funciona sin fix, podes dejarlo asi, pero si tenes v1 de captcha, si recomiendo actualizar v2 que es el mod de kmario,
la v1 esta obsoleta y la v2 algunos les funciono sin fix, en mi caso, con fix.
Podes probar registrarte y ver que tal..

Compartir este post


Enlace al post
Compartir en otros sitios

Me gusta tu fix, un par de detalles.

En vez de usar todo ese código, mejor hacer esto:

$secret = 'CLAVE PRIVADA';
$response = file_get_contents("https://www.google.com/recaptcha/api/siteverify?secret=".$secret."&response=".$_POST['g-recaptcha-response']."&remoteip=".$_SERVER['REMOTE_ADDR']);
$response = json_decode($response,true);
if(!intval($response["success"])) return 'recaptcha: Comprueba de que no eres un robot.';

Y también te faltó que no es necesario requerir el archivo recaptchalib.php y tampoco es necesario tenerlo, así que se puede borrar perfectamente.

 

Editado por SeniorBolainas
Responses -> Response (por la adaptación de mi script a Phpost Risus)
  • Me gusta 1

Compartir este post


Enlace al post
Compartir en otros sitios
hace 4 horas, SeniorBolainas dijo:

Me gusta tu fix, un par de detalles.

En vez de usar todo ese código, mejor hacer esto:

$secret = 'CLAVE PRIVADA';
$response = file_get_contents("https://www.google.com/recaptcha/api/siteverify?secret=".$secret."&response=".$_POST['g-recaptcha-response']."&remoteip=".$_SERVER['REMOTE_ADDR']);
$response = json_decode($response,true);
if(!intval($response["success"])) return 'recaptcha: Comprueba de que no eres un robot.';

Y también te faltó que no es necesario requerir el archivo recaptchalib.php y tampoco es necesario tenerlo, así que se puede borrar perfectamente.

 

Muy bien! como en la documentación dice que la solicitud se hace vía post por eso usé curl, pero así va de lujo.

  • Gracias 1

Compartir este post


Enlace al post
Compartir en otros sitios

Que alguien me ayude hice todos los pasos dos veces y me queda el capcha infinito... Alguien pudo solucionar??

Enviado desde mi SM-J710MN mediante Tapatalk

Compartir este post


Enlace al post
Compartir en otros sitios

Registra una cuenta o conéctate para comentar

Debes ser un miembro de la comunidad para dejar un comentario

Crear una cuenta

Regístrate en nuestra comunidad. ¡Es fácil!

Registrar una cuenta nueva

Iniciar Sesión

¿Ya tienes cuenta? Conéctate aquí.

Iniciar Sesión

  • Similar Content

    • Por Tronlar
      Hola a [email protected],os dejo como hacer funcionar el sistema de captcha en las V5,V6,lo acabo de probar y funciona bien.
       
       
      En c.admin.php --> inc/class/c.admin.php
       
      Buscar:
      'newr' => empty($_POST['newr']) ? 0 : 1);
      Cambiar por:
      'newr' => empty($_POST['newr']) ? 0 : 1, 'pkey' => $tsCore->setSecure($_POST['pkey']), 'skey' => $tsCore->setSecure($_POST['skey']),  
       
      Buscar:
      '\', `offline_message` = \'' . $c['offline_message'] .  
      Añadir al lado:
      '\', `pkey` = \'' . $c['pkey'] . '\', `skey` = \'' . $c['skey'] .
      Tiene que quedar así:
      '\', `offline_message` = \'' . $c['offline_message'] . '\', `pkey` = \'' . $c['pkey'] . '\', `skey` = \'' . $c['skey'] .  
       

      En c.registro.php --> inc/class/c.registro.php
       
      Buscar:
      'user_captacha_challenge' => $_POST['recaptcha_challenge_field'], 'user_captacha_response' => $_POST['recaptcha_response_field'],  
      Cambiar por:
      'user_captcha' => $_POST['g-recaptcha-response'],  
      Buscar:
      'captacha' => 'El código es incorrecto'
      Cambiar por:
      'captcha' => 'Validación incorrecta',  
       
      Buscar:
      // CAPTACHA require(TS_EXTRA . 'recaptchalib.php'); $robot = recaptcha_check_answer(RC_PIK,$_SERVER["REMOTE_ADDR"],$tsData['user_captacha_challenge'],$tsData['user_captacha_response']); if(!$robot->is_valid) return 'recaptcha: El código es incorrecto.';

      Cambiar por:        
      /** reCAPTCHA **/ $recaptcha = 'https://www.google.com/recaptcha/api/siteverify?secret=' . $tsCore->settings['skey'] . '&response=' . $tsData['user_captcha'] . '&remoteip=' . $tsCore->getIP(); // Obtener respuesta $response = file_get_contents($recaptcha); // Extraer resultado $ext1 = explode('"success":', $response); $ext2 = explode(',', $ext1[1]); // Comprobar resultado $valid = trim($ext2[0]); // Devolver respuesta si es incorrecta if ($valid == 'false') { return 'recaptcha: No hemos podido validar tu humanidad'; }  
       
      registro.js --> default/js/registro.js
      registro.js --> V6/js/registro.js
       
      Buscar:
      /* reCAPTCHA */ case 'recaptcha_challenge_field': return true; break; case 'recaptcha_response_field': //Si ya paso por aca y no hubieron cambios, devuelvo el mismo status if(!force_check && this.datos[campo] === value && this.datos['recaptcha_challenge_field'] == $('#RegistroForm .pasoDos #recaptcha_challenge_field').val()) if(this.datos_status[campo]=='empty') return no_empty ? this.show_status(el, this.datos_status[campo], this.datos_text[campo]) : this.hide_status(el, this.datos_status[campo], this.datos_text[campo]); else return this.show_status(el, this.datos_status[campo], this.datos_text[campo]); //Almaceno el dato this.datos[campo] = value; this.datos['recaptcha_challenge_field'] = $('#RegistroForm .pasoDos #recaptcha_challenge_field').val(); //!empty if(empty(value)){ var status = 'empty'; var text = 'El campo es requerido'; if(no_empty) return this.show_status(el, status, text); else return this.hide_status(el, status, text); } return registro.show_status(el, 'ok', 'OK'); break; } },  

      Cambiar por:    
      /* reCAPTCHA */ case 'g-recaptcha-response': this.datos[campo] = value; //!empty if (!value) { return this.show_status($('#RegistroForm .g-recaptcha'), 'empty', 'Demuestra que eres humano'); } return registro.show_status($('#RegistroForm .g-recaptcha'), 'ok', 'OK'); break; } },  
       
      Buscar:
      case 'recaptcha': //reCAPTCHA registro.change_paso(2, true); registro.show_status($('#RegistroForm #recaptcha_response_field'), 'error', h.substring(strpos(h, ':')+2)); break;
         
      Cambiar por:
      case 'recaptcha': //reCAPTCHA registro.change_paso(2, true); registro.show_status($('#RegistroForm .g-recaptcha'), 'error', h.substring(strpos(h, ':') + 2)); break;

      t.registro.tpl --> default/templates/t.registro.tpl
      t.registro.tpl --> V6/templates/t.registro.tpl    
          
       Buscar:
      <div class="form-line"> <label for="recaptcha_response_field">Ingresa el código de la imagen</label> <div id="recaptcha_ajax"> <div id="recaptcha_image"></div> <input type="text" id="recaptcha_response_field" name="recaptcha_response_field" /> </div> <div class="help recaptcha" id="nubex"><span id="puy"></span><span><em></em></span></div> </div>  

      Cambiar por:
      <div class="form-line"> <label>Confirme humanidad:</label> <div class="g-recaptcha" data-sitekey="{$tsConfig.pkey}"></div> <div class="help"><span><em></em></span></div> </div>
         
      Buscar:
      <script type="text/javascript"> // $.getScript("{$tsConfig.js}/registro.js{literal}", function(){ //Seteo el pais seleccionado //registro.datos['pais']='MX'; //registro.datos_status['pais']='ok'; //registro.datos_text['pais']='OK'; // registro.change_paso(1); //Genero el autocomplete de la ciudad /*$('#RegistroForm .pasoDos #ciudad').autocomplete('/registro-geo.php', { minChars: 2, width: 298 }).result(function(event, data, formatted){ registro.datos['ciudad_id'] = (data) ? data[1] : ''; registro.datos['ciudad_text'] = (data) ? data[0].toLowerCase() : ''; if(data) $('#RegistroForm .pasoDos #terminos').focus(); });*/ mydialog.procesando_fin(); }); //Load recaptcha $.getScript("http://www.google.com/recaptcha/api/js/recaptcha_ajax.js", function(){ Recaptcha.create('6LcXvL0SAAAAAPJkBrro96lnXGZ56TBRExEmVM3L', 'recaptcha_ajax', { theme:'custom', lang:'es', tabindex:'13', custom_theme_widget: 'recaptcha_ajax', callback: function(){ $('#recaptcha_response_field').blur(function(){ registro.blur(this); }).focus(function(){ registro.focus(this); }).attr('title', 'Ingrese el código de la imagen'); } }); }); </script>

      Cambiar por:       
      <script type="text/javascript"> // $.getScript("{$tsConfig.js}/registro.js{literal}", function(){ //Seteo el pais seleccionado //registro.datos['pais']='MX'; //registro.datos_status['pais']='ok'; //registro.datos_text['pais']='OK'; // registro.change_paso(1); //Genero el autocomplete de la ciudad /*$('#RegistroForm .pasoDos #ciudad').autocomplete('/registro-geo.php', { minChars: 2, width: 298 }).result(function(event, data, formatted){ registro.datos['ciudad_id'] = (data) ? data[1] : ''; registro.datos['ciudad_text'] = (data) ? data[0].toLowerCase() : ''; if(data) $('#RegistroForm .pasoDos #terminos').focus(); });*/ mydialog.procesando_fin(); }); </script> <script src="https://www.google.com/recaptcha/api.js" async defer></script> <script type="text/javascript"> $.getScript("{$tsConfig.js}/registro.js{literal}", function(){ registro.change_paso(1); mydialog.procesando_fin(); }); </script>

       m.admin_configs.tpl     --> default/templates/admin_mods/m.admin_configs.tpl            
       m.admin_configs.tpl     --> V6/templates/admin_mods/m.admin_configs.tpl    
              
      Buscar:   
      <dl> <dt><label for="ai_xat">Xat ID:</label><br /><span>Por defecto puedes agregar un chat de <a href="http://xat.com">Xat</a> para tu web, solo crea tu grupo he ingresa el nombre.</span></dt> <dd><input type="text" id="ai_xat" name="xat" maxlength="20" value="{$tsConfig.xat_id}" /> </dd> </dl> <hr />  

      Añadir debajo:
      <dl> <dt> <label for="pkey">reCaptcha pública</label> <br /><span>Clave pública de <a href="https://www.google.com/recaptcha/admin">reCatpcha</a>.</span> </dt> <dd> <input type="text" id="pkey" name="pkey" value="{$tsConfig.pkey}" /> </dd> </dl> <dl> <dt> <label for="skey">reCaptcha secreta</label> <br /><span>Clave privada de <a href="https://www.google.com/recaptcha/admin">reCatpcha</a>.</span> </dt> <dd> <input type="text" id="skey" name="skey" value="{$tsConfig.skey}" /> </dd> </dl> <hr />  
      Y con eso ya la tienen funcionando,saludos.


       
       
       
       
       

              
           
       
  • Navegando Recientemente   0 miembros

    No registered users viewing this page.

  • Patrocinador



  • ×