{"id":25274,"date":"2021-06-03T18:07:00","date_gmt":"2021-06-03T15:07:00","guid":{"rendered":"https:\/\/themewp.inform.click\/?p=25274"},"modified":"2021-10-18T02:09:20","modified_gmt":"2021-10-17T23:09:20","slug":"integrer-google-invisible-recaptcha-avec-php","status":"publish","type":"post","link":"https:\/\/themewp.inform.click\/fr\/integrer-google-invisible-recaptcha-avec-php\/","title":{"rendered":"Int\u00e9grer Google Invisible reCAPTCHA avec PHP"},"content":{"rendered":"<p>L&rsquo;ajout de captcha sur les formulaires du site Web est n\u00e9cessaire de nos jours. Sinon, votre bo\u00eete de r\u00e9ception et votre base de donn\u00e9es se remplissent de tonnes de spams. Cela ne fait que perdre notre temps \u00e0 nettoyer les e-mails et occupe \u00e9galement un espace suppl\u00e9mentaire dans la base de donn\u00e9es du serveur.<\/p>\n<p>Google reCAPTCHA est un meilleur moyen de prot\u00e9ger vos formulaires contre les robots. En utilisant reCAPTCHA, vous ne proc\u00e9derez \u00e0 vos formulaires que s&rsquo;il y a de r\u00e9elles interactions humaines.<\/p>\n<p>Dans cet article, nous \u00e9tudions comment int\u00e9grer Google Invisible reCAPTCHA sur les formulaires de votre site Web avec PHP. Dans le cas d&rsquo;Invisible reCAPTCHA, vos visiteurs n&rsquo;ont pas besoin de r\u00e9soudre des \u00e9nigmes. Il doit valider la demande en arri\u00e8re-plan c\u00f4t\u00e9 serveur.<\/p>\n<h3>Enregistrez le site et obtenez des cl\u00e9s API<\/h3>\n<p>Pour commencer, enregistrez votre site ici &#8211; <a href=\"https:\/\/www.google.com\/recaptcha\/admin\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external\"><\/a><a href=\"https:\/\/www.google.com\/recaptcha\/admin\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">https:\/\/www.google.com\/recaptcha\/admin<\/a>.<\/p>\n<p>Procurez-vous une option \u00ab\u00a0Badge reCAPTCHA invisible\u00a0\u00bb de \u00ab\u00a0reCAPTCHA v2\u00a0\u00bb.<\/p>\n<p><a href=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20366-6081e5c0514d1.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20366-6081e5c0514d1.png\" alt=\"Int\u00e9grer Google Invisible reCAPTCHA avec PHP\" ><\/a><\/p>\n<p>Ajoutez votre domaine sous la m\u00eame forme. Vous pouvez ins\u00e9rer autant de domaines que vous le souhaitez. Pour un serveur local, ajoute le domaine en tant que localhost. En soumettant un formulaire, vous obtiendrez les cl\u00e9s API. Copiez ces cl\u00e9s. Il sera requis dans les prochaines \u00e9tapes.<\/p>\n<p><a href=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20366-6081e5c0e03db.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20366-6081e5c0e03db.png\" alt=\"Int\u00e9grer Google Invisible reCAPTCHA avec PHP\" ><\/a><\/p>\n<h3>Int\u00e9grer Google Invisible reCAPTCHA<\/h3>\n<p>Pour ajouter un reCAPTCHA invisible dans le formulaire, une approche l\u00e9g\u00e8rement diff\u00e9rente est n\u00e9cessaire. Nous devons transmettre des attributs de donn\u00e9es au bouton et soumettre le formulaire en utilisant JavaScript comme suit.<\/p>\n<pre><code>&lt;form method=\"post\" id=\"userForm\"&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;p&gt;&lt;input type=\"text\" class=\"form-control\" name=\"fullname\" placeholder=\"Enter full name\" \/&gt;&lt;\/p&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;p&gt;&lt;button class=\"g-recaptcha btn btn-primary\" data-sitekey=\"YOUR_SITE_KEY\" data-callback=\"submitForm\"&gt;Submit&lt;\/button&gt;&lt;\/p&gt;\n&lt;\/form&gt;\n\u00a0\n&lt;script src='https:\/\/www.google.com\/recaptcha\/api.js'&gt;&lt;\/script&gt;\n&lt;script&gt;\nfunction submitForm() {\n\u00a0\u00a0\u00a0\u00a0document.getElementById('userForm').submit();\n}\n&lt;\/script&gt;<\/code><\/pre>\n<p>Ce code ajoute Invisible reCAPTCHA dans votre formulaire. Si vous rechargez la page, vous verrez le logo reCAPTCHA dans le coin inf\u00e9rieur droit de la page.<\/p>\n<p>Ici, nous avons pass\u00e9 la cl\u00e9 du site reCAPTCHA \u00e0 l&rsquo;attribut &lsquo;data-sitekey&rsquo; et le nom de la m\u00e9thode &lsquo;submitForm&rsquo; \u00e0 l&rsquo;attribut &lsquo;data-callback&rsquo;. Lorsque l&rsquo;utilisateur clique sur le bouton, il appelle la m\u00e9thode de rappel qui soumet un formulaire \u00e0 l&rsquo;aide de JavaScript.<\/p>\n<p>Maintenant, il est temps pour la validation c\u00f4t\u00e9 serveur. Nous v\u00e9rifierons la valeur de la r\u00e9ponse reCAPTCHA par rapport \u00e0 l&rsquo;URL de l&rsquo;API Google comme suit.<\/p>\n<pre><code>if (isset($_POST['g-recaptcha-response'])) {\n\u00a0\u00a0\u00a0\u00a0$secret_key = 'YOUR_SECRET_KEY';\n\u00a0\u00a0\u00a0\u00a0$url = 'https:\/\/www.google.com\/recaptcha\/api\/siteverify?secret='.$secret_key.'&amp;response='.$_POST['g-recaptcha-response'];\n\u00a0\u00a0\u00a0\u00a0$curl = curl_init();\n\u00a0\u00a0\u00a0\u00a0curl_setopt($curl, CURLOPT_URL, $url);\n\u00a0\u00a0\u00a0\u00a0curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);\n\u00a0\u00a0\u00a0\u00a0curl_setopt($curl, CURLOPT_HEADER, false);\n\u00a0\u00a0\u00a0\u00a0$data = curl_exec($curl);\n\u00a0\u00a0\u00a0\u00a0curl_close($curl);\n\u00a0\u00a0\u00a0\u00a0$responseCaptchaData = json_decode($data);\n\u00a0\n\u00a0\u00a0\u00a0\u00a0if($responseCaptchaData-&gt;success) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0echo 'Captcha verified';\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\/\/proceed with form values\n\u00a0\u00a0\u00a0\u00a0} else {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0echo 'Verification failed';\n\u00a0\u00a0\u00a0\u00a0}\n}<\/code><\/pre>\n<p>Lorsqu&rsquo;un vrai humain soumet votre formulaire, il g\u00e9n\u00e8re une r\u00e9ponse reCAPTCHA que le code ci-dessus v\u00e9rifie ensuite avec l&rsquo;API Google. Si le formulaire est envoy\u00e9 via des robots, la v\u00e9rification ci-dessus \u00e9choue. Vous ne devez remplir le formulaire qu&rsquo;en cas de r\u00e9ponse positive.<\/p>\n<p>Notre code final est le suivant.<\/p>\n<pre><code>&lt;?php\nif (isset($_POST['g-recaptcha-response'])) {\n\u00a0\u00a0\u00a0\u00a0$secret_key = 'YOUR_SECRET_KEY';\n\u00a0\u00a0\u00a0\u00a0$url = 'https:\/\/www.google.com\/recaptcha\/api\/siteverify?secret='.$secret_key.'&amp;response='.$_POST['g-recaptcha-response'];\n\u00a0\u00a0\u00a0\u00a0$curl = curl_init();\n\u00a0\u00a0\u00a0\u00a0curl_setopt($curl, CURLOPT_URL, $url);\n\u00a0\u00a0\u00a0\u00a0curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);\n\u00a0\u00a0\u00a0\u00a0curl_setopt($curl, CURLOPT_HEADER, false);\n\u00a0\u00a0\u00a0\u00a0$data = curl_exec($curl);\n\u00a0\u00a0\u00a0\u00a0curl_close($curl);\n\u00a0\u00a0\u00a0\u00a0$responseCaptchaData = json_decode($data);\n\u00a0\n\u00a0\u00a0\u00a0\u00a0if($responseCaptchaData-&gt;success) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0echo 'Captcha verified';\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\/\/proceed with form values\n\u00a0\u00a0\u00a0\u00a0} else {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0echo 'Verification failed';\n\u00a0\u00a0\u00a0\u00a0}\n}\n?&gt;\n&lt;form method=\"post\" id=\"userForm\"&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;p&gt;&lt;input type=\"text\" class=\"form-control\" name=\"fullname\" placeholder=\"Enter full name\" \/&gt;&lt;\/p&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;p&gt;&lt;button class=\"g-recaptcha btn btn-primary\" data-sitekey=\"YOUR_SITE_KEY\" data-callback=\"submitForm\"&gt;Submit&lt;\/button&gt;&lt;\/p&gt;\n&lt;\/form&gt;\n\u00a0\n&lt;script src='https:\/\/www.google.com\/recaptcha\/api.js'&gt;&lt;\/script&gt;\n&lt;script&gt;\nfunction submitForm() {\n\u00a0\u00a0\u00a0\u00a0document.getElementById('userForm').submit();\n}\n&lt;\/script&gt;<\/code><\/pre>\n<p>C&rsquo;est \u00e7a! Profitez de formulaires sans spam sur votre site Web. J&rsquo;aimerais entendre vos pens\u00e9es et suggestions dans la section des commentaires ci-dessous.<\/p>\n<h4>Articles Li\u00e9s<\/h4>\n<ul>\n<li><a href=\"https:\/\/themewp.inform.click\/fr\/utilisation-de-google-recaptcha-sur-vos-formulaires-de-site-web-avec-php\/\" title=\"Utilisation de Google reCAPTCHA sur les formulaires de votre site Web avec PHP\">Utilisation de Google reCAPTCHA sur les formulaires de votre site Web avec PHP<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/fr\/valider-google-recaptcha-a-l-aide-de-javascript\/\" title=\"Valider Google reCAPTCHA \u00e0 l&#039;aide de JavaScript\">Valider Google reCAPTCHA \u00e0 l&rsquo;aide de JavaScript<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/fr\/un-guide-sur-l-ajout-de-google-recaptcha-v3-a-votre-site-web-laravel\/\" title=\"Un guide sur l&#039;ajout de Google reCAPTCHA v3 \u00e0 votre site Web Laravel\">Un guide sur l&rsquo;ajout de Google reCAPTCHA v3 \u00e0 votre site Web Laravel<\/a><\/li>\n<\/ul>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Source d&rsquo;enregistrement:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/artisansweb.net\" class=\"external external_icon\">artisansweb.net<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Vous cherchez \u00e0 int\u00e9grer Google Invisible reCAPTCHA sur votre formulaire de site Web ? Dans cet article, je vous montre comment ajouter et v\u00e9rifier invisible<\/p>\n","protected":false},"author":1,"featured_media":21642,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[273],"tags":[844],"class_list":["post-25274","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-php-4","tag-affiai-fr"],"_links":{"self":[{"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/posts\/25274","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/comments?post=25274"}],"version-history":[{"count":0,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/posts\/25274\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/media\/21642"}],"wp:attachment":[{"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/media?parent=25274"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/categories?post=25274"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/tags?post=25274"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}