Publicado em: 09/20/16 |  por: edivaldosilva  | em: Web Hosting  |  235 Visualizações
Inserir O ReCAPTCHA Em Um Formulário De Contato Do Site

O reCAPTCHA é uma nova ferramenta do Google para proteger seu site contra SPAM BOT. Ele vem de uma ideia inovadora, pois até então os captchas eram vistos como um obstáculo ao invés auxiliar os usuários. Com o reCAPTCHA isso é diferente, pois tudo que o usuário precisa fazer é clicar em um checkbox, confirmando que não é um robô e selecionando imagens idênticas, caso seja solicitada pelo reCaptcha.

Vamos ensinar como criar um reCaptcha com formulários smarty em páginas TPL, utilizando também o PHP
Antes de tudo você deve ter uma conta no Google, para acessar a página.
Criar reCAPTCHA

Depois clique em: Get reCAPTCHA – um botão azul no topo direito.

Cadastre seu site e copie suas chaves puclica e privada. Veja a ilustração na imagem a seguir:

rel-recaptcha

Já li muitos artigos ensinando o editor inserir reCaptcha em um formulário de envio de e-mail, mas essa foi a única forma que eu encontrei para fazê-lo funcionar usando o form action – method=’POST’

Pegando um Script aqui, outro ali, eu juntei as peças e no meu caso funcionou perfeitamente. Mas lembro, que estou utilizando PHP – Smarty, com páginas .TPL e pode funcionar em páginas PHP, modificando alguns parâmetros.

Mãos a Obra.

Primeiro criei o formulário de contato usando o method=’POST’

Em seguida colei o código javascript entre as tags <head></head>

<script src='https://www.google.com/recaptcha/api.js'></script>

Já entre as Tags <form></form> Eu coloquei a DIV que o Google fornece com a public_key
O ideal é adicionar essa div antes do botão submit.

<div class="g-recaptcha" data-sitekey="SUA-CHAVE-PUBLICA"></div>

Depois é só acessar a página .PHP que processa o formulário de envio e adicionar o seguinte código:

<?php if(isset($_POST['submit'])){ $user_response = $_POST['g-recaptcha-response']; $secret_key = SUA-CHAVE-PRIVADA AQUI; $ip_local = $_SERVER["REMOTE_ADDR"]; $test = json_decode(file_get_contents('https://www.google.com/recaptcha/api/siteverify?secret='.$secret_key.'&response='.$user_response.'&remoteip='.$ip_local.'')); if($test->{'success'} == true){

// NESTA PARTE FICA A CLASSE QUE VAI VALIDAR O PROCESSAMENTO DA MENSAGEM E ENVIAR
//daqui em diante vai processar se tiver erros

} else { echo '<script> alert(\'Ops: Por favor selecione o checkbox, para autorizar o envio da mensagem\'); </script>'; echo "<script type='text/javascript'>history.go(-1)</script>"; } } ?>

Pronto. Faça o teste.
Se você usa página em puro PHP, tente fazer da mesma forma, embora meu conselho é: coloque um include() na página do formulário, para a página que processa.
Vamos fazer os testes em formulários para WordPress e em seguida postamos o artigo aqui.


Data do Cadastrado:  28th Jun 2016 
Total de Artigos Publicados:  67 
Total de Artigos Vistos:  18622 

Author Bio: This author has not submitted an authors bio yet

Últimos Artigos Publicados Por: edivaldosilva.

Últimos Artigos edivaldosilva já comentados.

Você não está logado para pazer comentários, por favor faça o log in ou Cadastre-se para comentar e responder.

icloud
Date Joined: 2013/02/24
Total de Artigos: 110