Livre para usar a biblioteca Recaptcha v2 para o CodeIgniter 4.
Este repostory já se muda para https://github.com/phpdevsr/recappcha-codeigniter4
A Recaptcha é um serviço gratuito que protege seu site contra spam e abuso. Ele usa o mecanismo avançado de análise de risco para diferenciar os seres humanos e os bots. Com a nova API, um número significativo de seus usuários humanos válidos passará pelo Recaptcha Challenge sem precisar resolver um Captcha (consulte o blog para obter mais detalhes). O Recaptcha vem na forma de um widget que você pode adicionar facilmente ao seu blog, fórum, formulário de registro, etc.
Veja os detalhes.
Para usar o Recaptcha, você precisa se inscrever em um par de teclas da API para o seu site. O par de chaves consiste em uma chave e segredo do site. A chave do site é usada para exibir o widget no seu site. O Secret autoriza a comunicação entre o back -end do seu aplicativo e o servidor Recaptcha para verificar a resposta do usuário. O segredo precisa ser mantido seguro para fins de segurança.
Instale com o compositor
$ composer require hexageek1337/recaptcha-codeigniter4Instalação manual com clone git
$ git clone https://github.com/hexageek1337/reCAPTCHA-Codeigniter
$ cd reCAPTCHA-Codeigniter-main
$ cp app/Config/Settings.php your_application_folder/Config/
$ cp app/Libraries/Recaptcha.php your_application_folder/Libraries/ Defina a chave e o segredo do seu site no app/Config/Settings.php File
public $ recaptcha_site_key = '' ;
public $ recaptcha_secret_key = '' ;
public $ recaptcha_lang = ' id ' ; echo $ this -> recaptcha -> getWidget ();saída:
< div class =" g-recaptcha " data-sitekey =" xxxxx " data-theme =" light " data-type =" image " data-size =" normal " loading =" lazy " > </ div >Alterar o tema padrão por parâmetro de matriz de passes
echo $ this -> recaptcha -> getWidget ( array ( ' data-theme ' => ' dark ' ));Alterar o tipo de padrão de passes por parte do parâmetro
echo $ this -> recaptcha -> getWidget ( array ( ' data-theme ' => ' dark ' , ' data-type ' => ' audio ' )); echo $ this -> recaptcha -> getScriptTag ();saída:
< script type =" text/javascript " src =" https://www.google.com/recaptcha/api.js?render=onload&hl=id " defer > </ script >Alterar o valor da renderização por parâmetro de matriz de passagem
echo $ this -> recaptcha -> getScriptTag ( array ( ' render ' => ' explicit ' ));Alterar o idioma padrão por parâmetro de matriz PASS
echo $ this -> recaptcha -> getScriptTag ( array ( ' render ' => ' explicit ' , ' hl ' => ' zh-TW ' )); Chama a API Recaptcha para verificar se o usuário passa o parâmetro Post g-recaptcha-response .
$ captcha = $ this -> request -> getPost ( ' g-recaptcha-response ' );
$ response = $ this -> recaptcha -> verifyResponse ( $ captcha );Verifique o sucesso ou falha
if ( isset ( $ response [ ' success ' ]) and $ response [ ' success ' ] === true ) {
echo " You got it! " ;
}