Aumentando segurança de seus formulários com o reCAPTCHA da Google
Para aumentar a segurança dos formulários em seus sites ou sitemas online, foi testado e implementado o recurso agora já incluído no JOOMLA 2.5 de reCAPTCHA, recurso de segurança de código livre da Google.
Através do site: http://code.google.com/intl/pt-BR/apis/recaptcha/docs/php.html
Podemos explorar como instalar este recurso em projeto de script em PHP puro ou em outras linguagens ou CMS como o próprio JOOMLA, WordPress, phpBB, MediaWiki.
Neste exemplo é apresentado a implementação do recurso em um formulário escrito em PHP sem CMS.
Para que o recaptcha funcione adequadamente deverá ter cadastro gratuito no site:
https://www.google.com/recaptcha
A clicar em MY ACCOUNT, faz-se o login com uma conta sua do gmail ou cadastrada no Google. Uma vez logado veremos como abaixo o menu de opções para se criar o TOKEN para o domínio onde aparecerá o recurso em seu formulário clicando-se em +Add a New Site
A quantidade de domínios para gerar estes TOKEN’s não sei se é ilimitada, mas podemos adicionar muitos domínios em uma única conta reCAPTHA.
Uma vez digitado no campo de domínio do site que irá ser carregado o recurso, será gerado duas chaves:
-Public Key;
- Private Key.
Tendo em mãos as chaves, iremos precisar de um arquivo rodando no servidor (recaptchalib.php). Os outros arquivos são exemplos, readme e outras coisas legais - eles não afetam a funcionalidade.
Para fazer funcionar precisará apenas incluir estas linhas básicas no formulário ao qual necessita-se de aumentar a segurança:
Uma importante informação é que este arquivo que estamos incluindo deve estar na mesma pasta do formulario e arquivo de processamento, para seu perfeito funcionamento.
As próximas linhas de exemplo serão inseridas no arquivo que processará as informações do formulário (Server Side):
Uma vez inserido as respectivas chaves (pública e privada), bastará trabalhar a condição para restringir o cadastro caso os caracteres digitados não corresponderem, retornando ao formulário para uma nova validação.
Espero que tenha ajudado e uma abraço a todos(as).
Através do site: http://code.google.com/intl/pt-BR/apis/recaptcha/docs/php.html
Podemos explorar como instalar este recurso em projeto de script em PHP puro ou em outras linguagens ou CMS como o próprio JOOMLA, WordPress, phpBB, MediaWiki.
Neste exemplo é apresentado a implementação do recurso em um formulário escrito em PHP sem CMS.
Para que o recaptcha funcione adequadamente deverá ter cadastro gratuito no site:
https://www.google.com/recaptcha
A clicar em MY ACCOUNT, faz-se o login com uma conta sua do gmail ou cadastrada no Google. Uma vez logado veremos como abaixo o menu de opções para se criar o TOKEN para o domínio onde aparecerá o recurso em seu formulário clicando-se em +Add a New Site
A quantidade de domínios para gerar estes TOKEN’s não sei se é ilimitada, mas podemos adicionar muitos domínios em uma única conta reCAPTHA.
Uma vez digitado no campo de domínio do site que irá ser carregado o recurso, será gerado duas chaves:
-Public Key;
- Private Key.
Tendo em mãos as chaves, iremos precisar de um arquivo rodando no servidor (recaptchalib.php). Os outros arquivos são exemplos, readme e outras coisas legais - eles não afetam a funcionalidade.
Para fazer funcionar precisará apenas incluir estas linhas básicas no formulário ao qual necessita-se de aumentar a segurança:
---------------------------------------------------------------------- require_once('recaptchalib.php'); $publickey = "your_public_key"; // coloque aqui a Public key echo recaptcha_get_html($publickey); ---------------------------------------------------------------------------------------------------------
As próximas linhas de exemplo serão inseridas no arquivo que processará as informações do formulário (Server Side):
----------------------------------------------------------------------------------------------------------------------- require_once('recaptchalib.php'); $privatekey = "your_private_key"; // coloque aqui a Private key $resp = recaptcha_check_answer ($privatekey, $_SERVER["REMOTE_ADDR"], $_POST["recaptcha_challenge_field"], $_POST["recaptcha_response_field"]); if (!$resp->is_valid) { // What happens when the CAPTCHA was entered incorrectly die ("The reCAPTCHA wasn't entered correctly. Go back and try it again." . "(reCAPTCHA said: " . $resp->error . ")"); } else { // Your code here to handle a successful verification } ?> ------------------------------------------------------------------------------------------------------------------------
Espero que tenha ajudado e uma abraço a todos(as).
Legal, não sabia que era necessário o cadastro no google. Vou pesquisar mais para implementar no meu site sobre <a href="http://conbim.net.br">BIM</a>. Obrigado amigo.
11/02/2018 3:19pm
(~6 anos atrás)
Gostei das recomendações para segurança vou aplicar no meu http://nextfit.com.br/ site de suplementos.
26/09/2017 7:24pm
(~7 anos atrás)
Gostei das recomendações para segurança vou aplicar no meu http://nextfit.com.br/" site de suplementos.
26/09/2017 7:24pm
(~7 anos atrás)
Diego, vc pode usar Ajax na validação ou Ajax Jquery para impedir que os dados sejam passados sem digitar o Recaptcha.
Ao submeter seu formulário o seu IF condicional deve primeiro verificar o Recaptcha para depois fazer os processos de cadastros.
Como pode ser visto neste tutorial escrito acima:
-----------------------------------------------------------------------
require_once('recaptchalib.php');
$privatekey = "your_private_key"; // coloque aqui a Private key
$resp = recaptcha_check_answer ($privatekey,
$_SERVER["REMOTE_ADDR"],
$_POST["recaptcha_challenge_field"],
$_POST["recaptcha_response_field"]);
if (!$resp->is_valid) {
// What happens when the CAPTCHA was entered incorrectly
die ("The reCAPTCHA wasn't entered correctly. Go back and try it again." .
"(reCAPTCHA said: " . $resp->error . ")");
} else {
//AQUI ENTRA O QUE O PHP VAI FAZER COM AS INFORMAÇÕES DO FORMULARIO
}
?>
---------------------------------------------------------------------
Ao submeter seu formulário o seu IF condicional deve primeiro verificar o Recaptcha para depois fazer os processos de cadastros.
Como pode ser visto neste tutorial escrito acima:
-----------------------------------------------------------------------
require_once('recaptchalib.php');
$privatekey = "your_private_key"; // coloque aqui a Private key
$resp = recaptcha_check_answer ($privatekey,
$_SERVER["REMOTE_ADDR"],
$_POST["recaptcha_challenge_field"],
$_POST["recaptcha_response_field"]);
if (!$resp->is_valid) {
// What happens when the CAPTCHA was entered incorrectly
die ("The reCAPTCHA wasn't entered correctly. Go back and try it again." .
"(reCAPTCHA said: " . $resp->error . ")");
} else {
//AQUI ENTRA O QUE O PHP VAI FAZER COM AS INFORMAÇÕES DO FORMULARIO
}
?>
---------------------------------------------------------------------
07/01/2014 11:26am
(~11 anos atrás)
Bom dia Roberto!
Estou desenvolvendo um formulário de cadastro, com o reCaptcha.
O mesmo já está funcionando, porém esse formulário tem um action para outra pagina, porém por isso quando o usuario nao preenche este reCaptcha, é direcionado para a pagina que o email e a insersao de dados no db.
O que preciso saber, é como fazer para que o repatcha seja obrigatório preencher, ou seja, quando o usuario clicar em Enviar, e o campo do reCaptcha estiver em branco, aparecer uma mensagem obrigando o mesmo à preencher o campo!
Obrigado!
Estou desenvolvendo um formulário de cadastro, com o reCaptcha.
O mesmo já está funcionando, porém esse formulário tem um action para outra pagina, porém por isso quando o usuario nao preenche este reCaptcha, é direcionado para a pagina que o email e a insersao de dados no db.
O que preciso saber, é como fazer para que o repatcha seja obrigatório preencher, ou seja, quando o usuario clicar em Enviar, e o campo do reCaptcha estiver em branco, aparecer uma mensagem obrigando o mesmo à preencher o campo!
Obrigado!
01/10/2013 7:30am
(~11 anos atrás)
Olá Roberto, tudo bem
caro me desculpa mais eu não entendi como usar o recaptcha em um formulário de e-mail.
por favor teria como você fazer um tutorial explicando???
agradeço!
caro me desculpa mais eu não entendi como usar o recaptcha em um formulário de e-mail.
por favor teria como você fazer um tutorial explicando???
agradeço!
18/08/2013 9:28pm
(~11 anos atrás)
18/06/2013 1:35am
(~11 anos atrás)