Jump to content

Recommended Posts

Olá, estive pesquisando muito uma maneira de implementar o API Re-Captcha do Google dentro do ajax , eu não obtive sucessos. gostaria de saber se alguém já conseguiu colocar para funcionar o mesmo dentro do ajax. ou se alguém conhece algum tutorial que utilize os mesmos recursos que funcione dentro do ajax.

 

Agradeço desde de já.

Share this post


Link to post
Share on other sites

É só usar POST do ajax, que passa o parâmetro, o chato é ficar validando, indo e voltando as validações...

 

Primeira busca do Google e já encontrei o que citei acima:

https://www.kaplankomputing.com/blog/tutorials/php/setting-recaptcha-2-0-ajax-demotutorial/

Share this post


Link to post
Share on other sites

Não funcionou, o Re-Captcha não aparece de jeito nenhum. eu estou utilizando o Ajax para abrir as minhas páginas ou estou abrindo as páginas da web dentro da própria index.

 

O link que utilizo para abrir a página de download:

<a href="#!register" onClick="new Ajax.Updater('container', 'template/request/register.php', {method: 'get', asynchronous:true, evalScripts:true}); esperar('container'); carregando(); mover();" style='padding:0px'>
<div style="width:186px;height:40px;background:url(template/images/reg_btn.gif);margin:0 3px;border-radius:5px;cursor:pointer;"></div>
</a>           

 

Formulário dá página carregada:

 <form method="post" name="register" id="register" enctype="multipart/form-data">
   
<input id="reg_tok" value="6f554838992d64aaa90413bb33949e95" type="hidden">
<div style="padding:20px 130px 3px" id="regbox">
  <div style="margin: 5px 10px;border-radius: 5px 5px 5px 5px; background: none repeat scroll 0% 0% rgba(70, 70, 70, 0.5); border: 1px solid rgba(70, 70, 70, 0.5); overflow: hidden; width: 280px;">
    <div style="float: left; text-align: center; padding: 3px 0pt; width: 80px;">User</div>
    <input id="run" name="mylogin" style="border: medium none; border-radius: 5px 5px 5px 5px; width: 200px; padding: 3px 5px;" size="16" type="text">
  </div>
  <div style="margin: 5px 10px;border-radius: 5px 5px 5px 5px; background: none repeat scroll 0% 0% rgba(70, 70, 70, 0.5); border: 1px solid rgba(70, 70, 70, 0.5); overflow: hidden; width: 280px;">
    <div style="float: left; text-align: center; padding: 3px 0pt; width: 80px;">Pass</div>
    <input id="rpw" name="mysenha" style="border: medium none; border-radius: 5px 5px 5px 5px; width: 200px; padding: 3px 5px;" size="16" type="password">
  </div>
  <div style="margin: 5px 10px;border-radius: 5px 5px 5px 5px; background: none repeat scroll 0% 0% rgba(70, 70, 70, 0.5); border: 1px solid rgba(70, 70, 70, 0.5); overflow: hidden; width: 280px;">
    <div style="float: left; text-align: center; padding: 3px 0pt; width: 80px;">Ver. Pass</div>
    <input id="rpw2" name="mysenha2" style="border: medium none; border-radius: 5px 5px 5px 5px; width: 200px; padding: 3px 5px;" size="16" type="password">
  </div>
  <div style="margin: 5px 10px;border-radius: 5px 5px 5px 5px; background: none repeat scroll 0% 0% rgba(70, 70, 70, 0.5); border: 1px solid rgba(70, 70, 70, 0.5); overflow: hidden; width: 280px;">
    <div style="float: left; text-align: center; padding: 3px 0pt; width: 80px;">fastname</div>
    <input id="rsc" name="myname" style="border: medium none; border-radius: 5px 5px 5px 5px; width: 200px; padding: 3px 5px;" size="16" type="text">
  </div>
  <div style="margin: 5px 10px;border-radius: 5px 5px 5px 5px; background: none repeat scroll 0% 0% rgba(70, 70, 70, 0.5); border: 1px solid rgba(70, 70, 70, 0.5); overflow: hidden; width: 280px;">
    <div style="float: left; text-align: center; padding: 3px 0pt; width: 80px;">Email</div>
    <input id="rem" name="myemail" style="border: medium none; border-radius: 5px 5px 5px 5px; width: 200px; padding: 3px 5px;" size="16" type="text">
  </div>
  <div style="margin: 5px 10px;border-radius: 5px 5px 5px 5px; background: none repeat scroll 0% 0% rgba(70, 70, 70, 0.5); border: 1px solid rgba(70, 70, 70, 0.5); overflow: hidden; width: 280px;">
    <div style="float: left; text-align: center; padding: 3px 0pt; width: 80px;">Friends ID</div>
    <input id="rrf" style="border: medium none; border-radius: 5px 5px 5px 5px; width: 200px; padding: 3px 5px;" size="16" value="none" type="text">
  </div>
</div>
<div style="padding-left:180px;margin-bottom:10px;">
   <div style="margin: 5px 10px;border-radius: 5px 5px 5px 5px; background: none repeat scroll 0% 0% rgba(70, 70, 70, 0.5); border: 1px solid rgba(70, 70, 70, 0.5); overflow: hidden; width: 200px;">
     <div style="text-align: center; padding-bottom: 2px; width: 200px;"></div>
   CAptcha
	
  </div>
</div>
<div style="text-align: center; width: 581px; margin-bottom:15px;">
          <button name="register" style="cursor:pointer;" class="btn  btn-success" type="button" onclick="new Ajax.Updater('msgRegistro', 'template/request/register.php?register=validad', {method: 'post', asynchronous:true, parameters:Form.serialize(document.register)}); carregando('#msgRegistro'); mover('#moveAquiMsgSend');">Concluir cadastro</button>

</div>
<div id="msgRegistro"></div>
</form>

Já estou quase desistindo de colocar Re-Captcha neste sistema de cadastro.:tired::pensive:

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By TheRonaldoStar
      Oii, fala ae pessoal!!
      Alguém pode me ajudar com uma coisa por favor?;
      Seguinte!, eu anteriormente fiz uma pergunta aqui no fórum recorrente a isso, mas eu conseguir uma solução parcial.
      Que era, fazer uma listagem de todos os cadastros e fazer a junção dos cadastros com uma coluna igual, Ou seja existem duas colunas [DE e Para], que recebem o id de quem está recebendo ou que está enviando a mensagem, eu conseguir fazer a tal listagem por grupo mas o problema que estou tendo é: que so faz o agrupamento de as colunas contiver o id por ex: [De = "1" e Para ="2"].
      Atualmente estou usando a codificação deste Jeito:
       
      $sql_2 = $db -> prepare("SELECT * FROM privado WHERE (Para = '$Meu_id') Or (De = '$Meu_id') GROUP BY Para, De DESC"); $sql_2 -> execute(); Esta consulta como pode ver ele busca todos os cadastros que tenha o meu ID ou seja do usuário online!, Após a consulta ele vei obter em um "while" somente o [ Id_De eo Id_Para ] desta forma:
      while($dados_2 = $sql_2 -> fetch(PDO::FETCH_OBJ)){ $Id_De = ($dados_2 -> De); $Id_Para = ($dados_2 -> Para); } Mas em fim eu gostaria de saber como mostrar somente um resultado ou seja o ultimo resultado que tiver o meu ID em ambas colunas [ Id_De ou Id_Para ].
      Antes de vocês me recomendar a função DESC LIMIT 'valor' saiba eu quero que liste todos os usuários que enviou ou recebeu minha mensagem não somente 1 ou seja se eu mandar um mensagem para o usuário 2 e ele me retornar uma mensagem vai mostrar somente o ultimo registro que tenha o meu ID e o id dele.
       
      Atenciosamente,
      ~Ronaldo
       
    • By HigorCrds
      Bom, o que eu consegui até agora foi fazer com que, ao usuário clicar em algum dos botões de paginação (1, 2, 3...) o PHP guarde uma SESSION com o número da página correspondente.
      Segue o código:
       
      <!-- BOTÃO COM O NÚMERO DA PÁGINA --> <button onclick="mudaVar(<?php echo $i; ?>);"> <?php echo $i; ?> </button> <!-- FUNÇÃO PARA GUARDAR SESSION PG --> function mudaVar(valor) { $.ajax({ url:'sessions.php?valor='+valor }); } // GUARDA SESSION PG if(isset($_GET['valor'])){ $_SESSION['pg'] = $_GET['valor']; } Até aí tudo bem, só que o problema é que a SESSION não é alterada naquele momento, só quando eu atualizo a página.
      Como corrigir isso?
    • By Vinicius Bazan
      Bom dia, Boa tarde e Boa noite!
       
        Estava eu aqui brincando um pouco com JS para entender um pouco melhor essa linguagem, pois eu preciso fazer um relógio em uma pagina HTML e um contador que aumente seu número em +1 de tempos em tempos ( no caso eu estava testando em aumentar a cada 5 segundos, considerando que esse número não vai começar do 0, pois ele teria que pegar todos os segundos que já se passaram nesse dia e dividir por 5, assim seu resultado inteiro seria exibido).
        O relógio com bastante esforço e pesquisa eu consegui fazer e está funcionando, até aqui sem dificuldades, o real problema está no contador, eu fui testar sem colocar um setInterval só para ver se o número aparece na tela e... NADA!
       Então como eu não manjo de JS e tentei fazer a partir do que eu usei pra fazer o relógio eu devo ter errado feio em muita coisa.
       
      <!DOCTYPE html> <html> <head> <title>javascript</title> <meta charset="utf-8"> <script type="text/javascript"> function relogio() { var data = new Date(); var horas = data.getHours(); var minutos = data.getMinutes(); var segundos = data.getSeconds(); if (horas < 10) { horas = "0"+horas; } if (minutos < 10) { segundos = "0"+minutos; } if (segundos < 10) { segundos = "0"+segundos; } document.getElementById("relogio").innerHTML=horas+":"+minutos+":"+segundos; } window.setInterval("relogio()",1000); // Aqui começa a função que eu tentei fazer para o contador function contador() { var data = new Date(); var horas = data.getHours(); var minutos = data.getMinutes(); var segundos = data.getSeconds(); var cont = ((minutos + (horas * 60))*60) + segundos ; document.getElementById("contador").innerHTML= Math.floor(cont/5); } </script> <style type="text/css"> #relogio { font:bold 28pt arial; display: block; margin: 100px auto; padding: 30px; background-color: #FFFF00; width: 150px; border-radius: 6px; box-shadow: 0px 0px 5px rgba(0, 0, 0, .5); } #contador { font:bold 28pt arial; display: block; margin: 100px auto; padding: 30px; background-color: #FFFF00; width: 150px; border-radius: 6px; box-shadow: 0px 0px 5px rgba(0, 0, 0, .5); } </style> </head> <body onload="relogio();"> <div id="relogio"> </div> <hr> <div id="contador"> </div> </body> </html>  
       Se alguém puder me ajudar eu agradeço!
    • By egalauber
      Tenho o seguinte trecho de código:
       
      #anima {
              width:600px;
              height:300px;
              margin:auto;
              
              animation: banner 10s infinite;
          }
       
      @keyframes banner {
              0%, 33% {
                      background:#009;
                  }
              34%, 66% {
                      background:#C00;
                  }
              67%, 100% {
                      background:#390;
                  }
          }
       
      No HTML tenho uma div com id=anima.
      Esse código faz a cada 3 segundos mudar a cor dessa div, tipo como se fosse um slide show.
       
      O que eu preciso fazer, é colocar 3 botões, cada botão mudando pra uma cor. Cada botão mudando pra um pedaço da execução do @keyframes banner.
       
      Botão1 - pula para-> 0%, 33% { background:#009; }
      Botão2 - pula para-> 34%, 66% { background:#C00; }
      Botão3 - pula para-> 67%, 100% { background:#390; }
       
      Como?
    • By fbezerra
      Bom dia galera,
      olha eu tenho essa função que faz download, eu queria modificar pra salvar em uma pasta exemplo "/Clientes" ou usuário escolher o diretório para salvar txt.
       
      function salvar(e) { let data = new Date().toLocaleDateString().slice(0,10); var texto = document.getElementById('conteudo').innerText; let titulo = document.getElementById('nomeCliente').value; let CodCli = document.getElementById('CodCliente').value; var blob = new Blob([texto], { type: "text/plain;charset=utf-8" }); saveAs(blob, titulo + " " + CodCli + " " + data + ".txt"); }  alguém pode me ajudar por favor
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.