GRATUIT à utiliser la bibliothèque RecaptCha v2 pour Codeigniter 4.
Ce reposteur passe déjà à https://github.com/phpdevsr/recaptcha-codeigniter4
Recaptcha est un service gratuit qui protège votre site contre le spam et les abus. Il utilise un moteur d'avancé d'analyse des risques pour distinguer les humains et les robots. Avec la nouvelle API, un nombre important de vos utilisateurs humains valides passeront le défi Recaptcha sans avoir à résoudre un CAPTCHA (voir le blog pour plus de détails). Recaptcha se présente sous la forme d'un widget que vous pouvez facilement ajouter à votre blog, forum, formulaire d'inscription, etc.
Voir les détails.
Pour utiliser RecaptCha, vous devez vous inscrire à une paire de clés API pour votre site. La paire de clés se compose d'une clé de site et d'un secret. La touche du site est utilisée pour afficher le widget de votre site. Le secret autorise la communication entre le backend de votre application et le serveur RecaptCha pour vérifier la réponse de l'utilisateur. Le secret doit être tenu en sécurité à des fins de sécurité.
installer avec compositeur
$ composer require hexageek1337/recaptcha-codeigniter4Installation manuelle avec 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/ Définissez la touche et le secret de votre site sur app/Config/Settings.php fichier
public $ recaptcha_site_key = '' ;
public $ recaptcha_secret_key = '' ;
public $ recaptcha_lang = ' id ' ; echo $ this -> recaptcha -> getWidget ();sortir:
< div class =" g-recaptcha " data-sitekey =" xxxxx " data-theme =" light " data-type =" image " data-size =" normal " loading =" lazy " > </ div >Modifier le thème par défaut par paramètre de tableau de passe
echo $ this -> recaptcha -> getWidget ( array ( ' data-theme ' => ' dark ' ));Modifier le type par défaut par paramètre de tableau de passage
echo $ this -> recaptcha -> getWidget ( array ( ' data-theme ' => ' dark ' , ' data-type ' => ' audio ' )); echo $ this -> recaptcha -> getScriptTag ();sortir:
< script type =" text/javascript " src =" https://www.google.com/recaptcha/api.js?render=onload&hl=id " defer > </ script >modifier la valeur de rendu par paramètre de tableau de passage
echo $ this -> recaptcha -> getScriptTag ( array ( ' render ' => ' explicit ' ));Modifier la langue par défaut par paramètre de tableau de passe
echo $ this -> recaptcha -> getScriptTag ( array ( ' render ' => ' explicit ' , ' hl ' => ' zh-TW ' )); Appelle l'API RecaptCha SiteVerify pour vérifier si l'utilisateur passe le paramètre de post g-recaptcha-response .
$ captcha = $ this -> request -> getPost ( ' g-recaptcha-response ' );
$ response = $ this -> recaptcha -> verifyResponse ( $ captcha );Vérifiez le succès ou l'échec
if ( isset ( $ response [ ' success ' ]) and $ response [ ' success ' ] === true ) {
echo " You got it! " ;
}