Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

safas

Recaptcha Google não valida formulario

Recommended Posts

Olá amigos,

Estou tendo muita dificuldade para validar uma recaptcha do Google em meu site.

Já tentei de tudo e não dá certo.

 

O que está acontecendo é que o visitante do site não precisa validar a captcha para enviar a mensagem, apesar da captcha estar aparentemente funcionando, se o visitante clicar direto em enviar a mensagem, a mesma chega na caixa de emails, o que nao era para acontecer.

 

Quem puder ajudar agradecerei bastante.

 

Vejam o codigo do formulario:

 <form action="http://site.com.br/cgi-sys/FormMail.cgi" method="post" name="formulario" id="formulario">
                                <input type="hidden" name="recipient" value="contato@site.com.br" />
                      <!-- CAMPO PARA AONDE SERÁ REDIRECIONADO DEPOIS DO ENVIO -->
                      <input type="hidden" name="redirect" value="http://www.site.com.br/enviado.html" />
                                    <input type="text" input name="Nome" value="Nome" onfocus="this.value = '';" onblur="if (this.value == '') {this.value = 'Nome';}">
                                    <input type="text" input name="subject" value="Assunto" onfocus="this.value = '';" onblur="if (this.value == '') {this.value = 'Assunto';}">
                                    <input type="text" input name="Email" value="Email" onfocus="this.value = '';" onblur="if (this.value == '') {this.value = 'Email';}">
                                    <input type="text" input name="Telefone" value="Telefone" onfocus="this.value = '';" onblur="if (this.value == '') {this.value = 'Telefone';}">
                                    <input type="text2" input name="Mensagem" value="Mensagem" onfocus="this.value = '';" onblur="if (this.value == '') {this.value = 'Mensagem';}"></textarea>
                                    <div  class = "g-recaptcha"  data-sitekey = "xxxx" ></div>
       <br/> 
      <input  type = "submit"  value = "Enviar Mensagem" > 
      </form>

								<!--js-->
                                <script src='https://www.google.com/recaptcha/api.js?hl=pt-BR'></script>

Index.php (não sei se seria necessario), andei lendo na web que seria, depois vi no Developers que parece que não, apesar de tudo, tudo que fiz nao fez a captcha rodar corretamente (obrigar a pessoa clicar nela para poder enviar a mensagem).

 

 

Codigo do index.php

<html>
  <body>
    <form action="" method="post">
<?php

require_once('recaptchalib.php');

// Get a key from https://www.google.com/recaptcha/admin/create
$publickey = "xxxxx";
$privatekey = "xxxxx";

# the response from reCAPTCHA
$resp = null;
# the error code from reCAPTCHA, if any
$error = null;

# was there a reCAPTCHA response?
if ($_POST["recaptcha_response_field"]) {
        $resp = recaptcha_check_answer ($privatekey,
                                        $_SERVER["REMOTE_ADDR"],
                                        $_POST["recaptcha_challenge_field"],
                                        $_POST["recaptcha_response_field"]);

        if ($resp->is_valid) {
                echo "You got it!";
        } else {
                # set the error code so that we can display it
                $error = $resp->error;
        }
}
echo recaptcha_get_html($publickey, $error);
?>
    <br/>
    <input type="submit" value="Enviar" />
    </form>
  </body>
</html>

Alguem sabe o que está errado? o Formmail? Se ter que mudar, como devo fazer? Se puder manter, o que poderia ser?

Ja modifiquei o form action do index.php para formmail e nada de dar certo =(

 

tentei varias coisas e nada.

quem puder ajudar, fica o meu obrigado registrado =)

Compartilhar este post


Link para o post
Compartilhar em outros sites
$secret = "jfijqiwjdiqwjd1h2DD!@#@#@!#!2d1p12d";
			$response = null;
			$reCaptcha = new ReCaptcha($secret);
			if($_POST["g-recaptcha-response"]){
				$response = $reCaptcha->verifyResponse(
			        $_SERVER["REMOTE_ADDR"],
			        $_POST["g-recaptcha-response"]
		    	);
			}
		}catch(exception $e){
			echo "Ocorreu um erro de conexão com o ReCaptcha.<p>".$e->getFile()."</p><p>".$e->getLine()."</p><p>".$e->getMessage();	
		}*/

Lembrando do require_once 'recaptchalib.php'

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sei que pode parecer besteira, mas... você colocou o private/public key certos?

 

Sim, coloquei tudo certo, só aqui que substitui por xxx ....rs

Compartilhar este post


Link para o post
Compartilhar em outros sites
$secret = "jfijqiwjdiqwjd1h2DD!@#@#@!#!2d1p12d";
			$response = null;
			$reCaptcha = new ReCaptcha($secret);
			if($_POST["g-recaptcha-response"]){
				$response = $reCaptcha->verifyResponse(
			        $_SERVER["REMOTE_ADDR"],
			        $_POST["g-recaptcha-response"]
		    	);
			}
		}catch(exception $e){
			echo "Ocorreu um erro de conexão com o ReCaptcha.<p>".$e->getFile()."</p><p>".$e->getLine()."</p><p>".$e->getMessage();	
		}*/

Lembrando do require_once 'recaptchalib.php'

 

 

Ele está lá no index.php

 

A captcha em si está funcionando, porém se o visitante clicar em Enviar Mensagem sem clicar nela, a mensagem é enviada, ou seja, é como se ela nao tivesse efeito algum.

 

O que pode ser? =(

Compartilhar este post


Link para o post
Compartilhar em outros sites

if ($response != null && $response->success){

enviarMensagem();

else{

naoEnviarMensagem();

}

 

amigo, nao sou um expert em codigos, voce poderia por favor postar sua recomendação copiando o meu codigo todo para eu ver aonde tenho que colocar este codigo que voce disse?rs

 

muito obrigado pela ajuda

Compartilhar este post


Link para o post
Compartilhar em outros sites


try{

$secret = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";

$response = null;

$reCaptcha = new ReCaptcha($secret);

if($_POST["g-recaptcha-response"]){

$response = $reCaptcha->verifyResponse(

$_SERVER["REMOTE_ADDR"],

$_POST["g-recaptcha-response"]

);

}

}catch(exception $e){

echo "Ocorreu um erro de conexão com o ReCaptcha.<p>".$e->getFile()."</p><p>".$e->getLine()."</p><p>".$e->getMessage();

}

 

if ($response != null && $response->success) {

echo 'Sucesso, o cara passou pelo captcha, agora eu pego os dados do form para cadastrar no bd :)';

}

else{

echo 'Poxa cara, o que custa você responder o captcha corretamente?';

sleep(5);

header("Location: ArquivoQueTemTelaDeCadastro.php ou html ");

//o cara não passou no captcha no if acima então vai voltar para tela de cadastro, flws espertão...

}

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por merlinus
      tenho a seguinte situação, uma  pagina iniciar e gostaria de usar o recaptcha.
      mas tem duas formas que gostaria q ele validasse, uma indo pra pagina pra pagina de logar, a outra indo pro script esqueci a senha que enviaria o email para o usuario.
       
      inicialmente pensei em mudar o action com javascript para o outro destino.
      percebi q o qpi do google dá erro.
       
      alguem tem alguma ideia do q posso fazer?
    • Por marcelocardoso
      olá colegas.

      depois de tanto quebrar a cabeça com o RECAPTCHA do google, v3.
      não estou conseguindo resgatar o ID do INPUT hidden que guarda o TOKEN!!!!

      Segue código
      HTML
       
      <!DOCTYPE html> <html lang="pt_BR"> <head> <meta charset="utf-8"> <meta content="text/html; charset=utf-8" http-equiv="Content-Type"> <meta content="ie=edge" http-equiv="X-UA-Compatible"> <title>Google Recaptcha - v3</title> <!-- STYLES CSS --> <link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/bootstrap@4.3.1/dist/css/bootstrap.min.css"> <link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/inputmask@3.3.11/css/inputmask.min.css"> <!-- STYLES CSS --> <!-- SCRIPTS JS --> <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/jquery/dist/jquery.min.js"></script> <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/jquery-form@4.2.2/dist/jquery.form.min.js"></script> <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/jquery-validation@1.19.1/dist/jquery.validate.min.js"></script> <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/jquery-validation@1.19.1/dist/localization/messages_pt_BR.min.js"></script> <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/jquery-validation@1.19.1/dist/additional-methods.min.js"></script> <!-- SCRIPTS JS --> <!-- SCRIPTS RECAPTCHA - SITE KEY --> <script src="https://www.google.com/recaptcha/api.js?render=6LesQewUAAAAAIWQKRKk19yob6G8hx3LEoYXybIC"></script> <!-- SCRIPTS RECAPTCHA - SITE KEY --> <style type="text/css"> *:focus { outline: none !important; } html, body { height: 100%; width: 100%; } body { color: darkgrey; margin: 60px 0px; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } /* google captcha - hidden na tela */ .grecaptcha-badge { display: none !important; } .valid-class { color: #006400; padding-left: 12px; padding-top: 3px; font-size: 15px; display: block; } .error-class { color: #e33d00; padding-left: 12px; padding-top: 3px; font-size: 15px; display: block; } .loading { position: fixed; left: 0px; top: 0px; margin: 0px; width: 100%; height: 100%; display: block; z-index: 999999; opacity: 0.92; -moz-opacity: 0.92; filter: alpha(opacity=98); background-color: #00224b; background-image: url("img/loading.gif"); background-repeat: no-repeat; background-position: 50% 50%; text-align: center; overflow: hidden; font-weight: bold; font-size: 25px; color: white; padding-top: 25%; } </style> </head> <body> <!-- code | formulario --> <section class="container-fluid"> <h1 class="text-center">RECAPTCHA</h1> <h4 class="text-center">GOOGLE v3</h4> <div class="col-xl-12 col-lg-12 col-md-12 col-sm-12 col-xs-12"> <form id="frm_form_contato" method="post" action="inc/google-form.asp"> <div class="form-group"> <div class="col-xl-12 col-lg-12 col-md-12 col-sm-12 col-xs-12 mb-2"> <label class="control-label" for="campo_nome">Nome</label> <input type="text" id="campo_nome" name="campo_nome" class="form-control" autocomplete="name" placeholder="Digite seu nome"> </div> <div class="col-xl-12 col-lg-12 col-md-12 col-sm-12 col-xs-12 mb-2"> <label class="control-label" for="campo_email">Email</label> <input type="text" id="campo_email" name="campo_email" class="form-control" autocomplete="email" placeholder="Digite seu e-mail"> </div> <div class="col-xl-12 col-lg-12 col-md-12 col-sm-12 col-xs-12 mb-2"> <label class="control-label" for="campo_mensagem">Mensagem</label> <textarea type="text" id="campo_mensagem" name="campo_mensagem" class="form-control" placeholder="Descreva sua mensagem"></textarea> </div> <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12 mt-4"> <div id="contato_retorno"></div> <button id="btn-form" type="submit" class="btn btn-block btn-md btn-success">ENVIAR</button> </div> </div> <input type="hidden" id="token"> </form> </div> <div id="contato_carregando"></div> </section> <!-- code | formulario --> <!-- GOOGLE reCAPTCHA --> <script type="text/javascript"> "use strict"; //formulario de validacao $("#frm_form_contato").validate({ errorClass: "error-class", validClass: "valid-class", onkeyup: function (element) { this.element(element); }, onfocusout: function (element) { this.element(element); }, rules: { campo_nome: { required: true, minlength: 5, maxlength: 50 }, campo_email: { required: true, minlength: 5, email: true }, campo_mensagem: { required: true, minlength: 5, maxlength: 5000 } }, submitHandler: function (form) { grecaptcha.ready(function () { grecaptcha.execute('6LesQewUAAAAAIWQKRKk19yob6G8hx3LEoYXybIC', { action: 'homepage' }).then(function (token) { $("input#token").attr({ "value": "" + token + "" }); }); }); // A) resgatar variaveis (uma por uma) var form_url = $(this).attr("action"); var form_method = $(this).attr("method"); var form_token = $(this).find('input[name="token"]').val(); var form_nome = $(this).find('input[name="campo_nome"]').val(); var form_email = $(this).find('input[name="campo_email"]').val(); var form_telefone = $(this).find('input[name="campo_telefone"]').val(); var form_mensagem = $(this).find('input[name="campo_mensagem"]').val(); // B) resgatar variaveis (tudo de uma vez) // var form_data = $("#frm_form_contato").serializeArray(); var form_data = { 'campo_nome': $("#campo_nome").val(), 'campo_email': $("#campo_email").val(), 'campo_mensagem': $("#campo_mensagem").val(), 'campo_token': $("#token").val(), }; // ENVIAR FORM com POST // $("form").submit(function (e) { // e.preventDefault(); // var $form = $(this); // $.post($form.attr("action"), $form.serialize()).then(function () {}); // }); //ENVIAR FORM com AJAX $.ajax({ url: $("#frm_form_contato").attr("action"), type: $("#frm_form_contato").attr("method"), data: JSON.stringify(form_data), dataType: 'json', contentType: 'application/json; utf-8', //loading antes do sucesso e do envio beforeSend: function () { $("#btn-form").prop("disabled", false).text('Enviando ...').fadeIn(); $("#contato_carregando").html("<div class='loading'></div>").fadeIn(500); }, //se houver sucesso success: function (response) { setTimeout(function () { $("#contato_carregando").fadeOut(250); }, 3950); setTimeout(function () { $("#contato_retorno").html("<div class='valida_a_certo'>" + response + "</div>").fadeIn(500); }, 4000); setTimeout(function () { $("#contato_retorno").fadeOut(500); $("#btn-form").prop("disabled", false).text('Enviado'); $(form)[0].reset(); }, 10000); }, //se houver sucesso, finaliza complete: function (response) { $('body').fadeTo(4000, '1'); }, //se houver erro error: function (response) { setTimeout(function () { $("#contato_retorno").html("<div class='valida_a_erro'>" + response + "</div>").fadeIn(500); }, 4000); setTimeout(function () { $("#contato_retorno").fadeOut(500); $(form)[0].reset(); }, 10000); }, }); return false; } }); </script> <!-- SCRIPTS RODAPE --> <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/bootstrap@4.3.1/dist/js/bootstrap.min.js"></script> <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/inputmask@3.3.11/dist/jquery.inputmask.bundle.js"></script> <!-- SCRIPTS RODAPE --> </body> </html> BACKEND - ASP
      não estou conseguindo repassar o TOKEN para cá, já tentei de várias formas... 
      mas não consigo nem com REQUEST.QUERYSTRING, REQUEST e nem REQUEST.FORM.

       
      <% Response.LCID = 1033 'USA LCID IF Request.ServerVariables("SERVER_NAME") <> Request.ServerVariables("SERVER_NAME") THEN Response.Write "ACESSO RESTRITO!" ELSE G_TOKEN = Request.Form("campo_token") 'google token G_KEY_URL = "https://www.google.com/recaptcha/api/siteverify?secret=" 'google url G_KEY_SITE = "" 'google chave do site G_KEY_SECRET = "" 'google chave secreta IF Request.ServerVariables("REQUEST_METHOD") = "POST" THEN SET objXML = Server.CreateObject("MSXML2.ServerXMLHTTP") objXML.Open "GET", ""& G_KEY_URL & G_KEY_SECRET &"&response=" & G_TOKEN & "", false objXML.Send IF InStr(objXML.ResponseText, "TRUE") THEN campo_nome = Request.Form("campo_nome") campo_email = Request.Form("campo_email") campo_mensagem = Replace(Request.Form("campo_mensagem"), Chr(13), "<br>") cdoSERVER = "mail.teste.com.br" cdoORIGEM = "teste@teste.com.br" cdoPASS = "senha" cdoPORT = 587 cdoTIMEOUT = 120 cdoUSING = 2 cdoAUT = 1 cdoSSL = 0 cdoDE = campo_nome &" <"& campo_email &">" cdoPARA = "teste@teste.com.br" cdoASSUNTO = "teste - contato" cdoTEXT = "Envio de mensagem usando CDOSYS" SET objCDOSYSmail = Server.CreateObject("cdo.message") SET objCDOSYScon = Server.CreateObject("cdo.configuration") objCDOSYScon.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = cdoPORT objCDOSYScon.Fields("http://schemas.microsoft.com/cdo/configuration/sendusing") = cdoUSING objCDOSYScon.Fields("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = cdoAUT objCDOSYScon.Fields("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = cdoTIMEOUT objCDOSYScon.Fields("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = cdoSSL objCDOSYScon.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserver") = cdoSERVER objCDOSYScon.Fields("http://schemas.microsoft.com/cdo/configuration/sendusername") = cdoORIGEM objCDOSYScon.Fields("http://schemas.microsoft.com/cdo/configuration/sendpassword") = cdoPASS objCDOSYScon.Fields.Update SET objCDOSYSmail.Configuration = objCDOSYScon objCDOSYSmail.From = cdoORIGEM objCDOSYSmail.To = cdoPARA objCDOSYSmail.Subject = cdoASSUNTO objCDOSYSmail.TextBody = cdoTEXT ON ERROR RESUME NEXT IF objCDOSYSmail.SEND = "" THEN Response.Write "Mensagem enviada com sucesso!" ELSE IF NOT ERR.NUMBER = "0" THEN Response.Write "Não foi possível enviar a mensagem!" Response.Write "OCORREU UM ERRO: " & Err.Number & " | " & Err.Description Err.Clear() END IF END IF ON ERROR GOTO 0 SET objCDOSYSmail = Nothing SET objCDOSYScon = Nothing ELSE Response.Write "recaptcha errado!" END IF SET objXML = Nothing END IF END IF %> Quem tiver tempo, e quiser dar uma olhada, só falta isso para finalizar o código, PASSAR o bendito parametro que não consigo do input para o ASP.
      No demais, agradeço.
      Até....
       
    • Por RafaelTOF
      Boa noite amigos,
       
      estava matutando aqui sobre a eficiencia do recaptcha em um sistema de login.
       
      sou leigo no assunto, mas penso da seguinte forma.
       
      ex:
      O recaptcha é colocado na pagina "login.php", essa pagina contem o formulario que sera exibido para o usuario e chama a "verifica.php" para pegar os dados e consultar.
       
      ai que entra minha duvida,
       
      sabendo que o submit ira enviar os dados para a pagina "veriica.php", eu poderia criar um formulariozinho na minha maquina sem recaptcha e inserir dados a vida toda sem passar pelo recaptcha, somente colocando no meu submit "/endereçocompleto/verifica.php "... 
       
      está certo isso ou tem mais algum mecanismo de defesa que eu não conheço?
       
      neste caso o bloqueio por armazenamento de ip direto no "verifica.php" não seria muito mais eficiente do que o recaptcha?
       
      para ser seguro, a verificação teria que ser feita na mesma pagina onde esta o recaptcha, teria que usar recaptcha junto a outro meio de defesa por armazenamento ou so recactcha é seguro e eu nãop entendi o seu funcionamento ou configuração?
       
       
      Abraço
    • Por WAD - Soluções
      Olá, estou tentando utilizar este formulário de contato com o recaptcha, porém apresenta erro que não estou conseguindo resolver.
      ERRO: Por favor faça a verificação do captcha abaixo

      Link formulário: http://cartorio1bg.com.br/teste/andre/formulario-contato.php
      PHP INFO MEU SERVIDOR: http://cartorio1bg.com.br/teste/andre/info.php
      link: error_log : http://cartorio1bg.com.br/teste/andre/error_log
       
      Arquivos necessário: 
       
      PHPMailerAutoload.php – Responsável por carregar todas as dependências da classe PHPMailer class.phpmailer.php – A classe principal do PHPMailer class.smtp.php – A classe que vai permitir você fazer envios via SMTP
      Post original deste formulário: https://wiki.dialhost.com.br/formulario-de-contato-php-captcha/

      Código HTML – formulario-contato.php
      <?php include 'envia.php'; ?> <html> <head> <meta charset="utf8"> <title>Formulário de contato</title> <!-- Aqui adiciona o script do ReCaptcha --> <script src='https://www.google.com/recaptcha/api.js'></script> <link rel="stylesheet" href="style.css"> </head> <body> <div class="container"> <h1>Este é um teste de formulário de contato</h1> <form method="POST" action="formulario-contato.php"> <label>Digite seu nome: <input type="text" name="nome" value="" placeholder="ex: João" required> </label> <label>Digite seu e-mail: <input type="email" name="email" value="" placeholder="ex: joaoclb@gmail.com" required> </label> <label>Digite o assunto: <input type="text" name="assunto" value="" placeholder="ex: orçamento" required> </label> <label>Digite sua mensagem: <input type="text" name="msg" value="" placeholder="Digite sua mensagem aqui" required> </label> <!-- Div do ReCaptcha foi adicionado no final do formulário --> <div class="g-recaptcha" data-sitekey="|*SEU-SITE-KEY*|"></div> <input class="send" type="submit"> </form> </div> </body> </html>  
      Código PHP – envia.php
       
      <?php //Defino a Chave do meu site $secret_key = '|*SEU-SECRET-KEY*|'; //Pego a validação do Captcha feita pelo usuário $recaptcha_response = $_POST['g-recaptcha-response']; // Verifico se foi feita a postagem do Captcha if(isset($recaptcha_response)){ // Valido se a ação do usuário foi correta junto ao google $answer = json_decode( file_get_contents( 'https://www.google.com/recaptcha/api/siteverify?secret='.$secret_key. '&response='.$_POST['g-recaptcha-response'] ) ); // Se a ação do usuário foi correta executo o restante do meu formulário if($answer->success) { // Carrego a classe PHPMailer através do Autoload include "PHPMailerAutoload.php"; // Instancio a classe PHPMailer $msg = new PHPMailer(); // Faço todas as configurações de SMTP para o envio da mensagem $msg->CharSet = "UTF-8"; $msg->isSMTP(); $msg->Host = '|*SMTP.SEUDOMINIO.COM.BR*|'; $msg->SMTPAuth = true; $msg->Username = '|*SEU-EMAIL@SEUDOMINIO.COM.BR*|'; $msg->Password = '|*SUA-SENHA*|'; $msg->Port = 587; $msg->SMTPAutoTLS = false; $msg->AuthType = 'PLAIN'; //Defino o remetente da mensagem $msg->setFrom('|*SEU-EMAIL@SEUDOMINIO.COM.BR*|','|*NOME-DO-SEUEMAIL*|'); // Defino a quem esta mensagem será respondida, no caso, para o e-mail // que foi cadastrado no formulário $msg->addReplyTo($_POST['email'], $_POST['nome']); // Defino a mensagem como mensagem de texto (Ou seja não terá formatação HTML) $msg->IsHTML(false); // Adiciono o destinatário desta mensagem, no caso, //minha conta de contatos comerciais. $msg->AddAddress('|*SEU-EMAIL@SEUDOMINIO.COM.BR*|', '|*NOME-DO-SEUEMAIL*|'); // Defino o assunto que foi digitado no formulário $msg->Subject = $_POST['assunto']; // Defino a mensagem que foi digitada no formulário $msg->Body = $_POST['msg']; // Defino a mensagem alternativa que foi digitada no formulário. // Esta mensagem é utilizada para validações AntiSPAM e por isto // é muito recomendado que utilize-a $msg->AltBody = $_POST['msg']; // Faço o envio da mensagem $enviado = $msg->Send(); // Limpo todos os registros de destinatários e arquivos $msg->ClearAllRecipients(); // Caso a mensagem seja enviada com sucesso ela retornará sucesso // senão, ela retornará o erro ocorrido if ($enviado){ echo "E-mail enviado com sucesso!"; } else { echo "Não foi possível enviar o e-mail."; echo "<b>Informações do erro:</b> " . $msg->ErrorInfo; } } // Caso o Captcha não tenha sido validado //retorno uma mensagem de erro. else { echo "Por favor faça a verificação do captcha abaixo"; } }  
    • Por alexandre99
      Boa noite pessoal,
      Estou com um problema aqui, inclui 2 recaptchas em minha página e eles estão funcionando corretamente, porém na hora de limpar eles (após dar o submit através do ajax) não consigo resetar o recaptcha, se eu uso o "grecaptcha.reset" ele limpa somente um recaptcha..
      Obrigado!
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.