{"id":1314,"date":"2021-12-12T22:40:53","date_gmt":"2021-12-12T20:40:53","guid":{"rendered":"http:\/\/leonidassavvides.com\/blog\/?p=1314"},"modified":"2021-12-12T22:40:53","modified_gmt":"2021-12-12T20:40:53","slug":"google-recaptcha-in-a-web-form","status":"publish","type":"post","link":"https:\/\/www.leonidassavvides.com\/blog\/2021\/12\/google-recaptcha-in-a-web-form\/","title":{"rendered":"Google reCAPTCHA in a web form"},"content":{"rendered":"<div style=\"margin-top: 0px; margin-bottom: 0px;\" class=\"sharethis-inline-share-buttons\" ><\/div>\n<p class=\"has-text-align-center\"><strong>Using HTML5, JS\/jQuery\/Ajax, CSS3, Bootstrap, PHP<\/strong><\/p>\n\n\n\n<p>Documentation here:<\/p>\n\n\n\n<p><a href=\"https:\/\/developers.google.com\/recaptcha\/docs\/display\">https:\/\/developers.google.com\/recaptcha\/docs\/display<\/a><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p>Practiced here:  <a href=\"http:\/\/www.followthesun.com.cy\/contactus.php\">http:\/\/www.followthesun.com.cy\/contactus.php<\/a><\/p>\n\n\n\n<p>To-Do the same here in this Article Web Log\/Video Log:<\/p>\n\n\n\n<p><a href=\"http:\/\/www.latchiquads.com\/contactus.html\" target=\"_blank\" rel=\"noreferrer noopener\">http:\/\/www.latchiquads.com\/contactus.html<\/a><\/p>\n\n\n\n<p><a rel=\"noreferrer noopener\" href=\"http:\/\/www.polistaxicyprus.com\/contactus.html\" target=\"_blank\">http:\/\/www.polistaxi.com\/contacts.php<\/a><\/p>\n\n\n\n<p><a href=\"http:\/\/www.poliscyprusquads.com\/contactus.html\" target=\"_blank\" rel=\"noreferrer noopener\">http:\/\/www.poliscyprusquads.com\/contactus.html<\/a><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p>Notes:<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><a rel=\"noreferrer noopener\" href=\"http:\/\/www.latchiquads.com\/contactus.html\" target=\"_blank\">http:\/\/www.latchiquads.com<\/a><strong><a rel=\"noreferrer noopener\" href=\"http:\/\/www.latchiquads.com\/contactus.html\" target=\"_blank\">\/contactus.html<\/a><\/strong> <\/h2>\n\n\n\n<p>in the webpage HTML5\/CSS3\/JS\/JQUERY code.<\/p>\n\n\n\n<p><a rel=\"noreferrer noopener\" href=\"http:\/\/www.latchiquads.com\/contactus.html\" target=\"_blank\">http:\/\/www.latchiquads.com<\/a><strong><a rel=\"noreferrer noopener\" href=\"http:\/\/www.latchiquads.com\/contactus.html\" target=\"_blank\">\/contactus.html<\/a> <\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;script type=\"text\/javascript\"&gt;\n\n  var reC = \"\";\n\n  var verifyCallback = function(response) {\n        \/\/console.log(response);\n        \/\/reC = response;\n        $(\"#g-recaptcha-response\").val(response);\n      };\n  var onloadCallback = function() {\n    grecaptcha.render('html_element', {\n      'sitekey' : 'site key',          \n            'callback' : verifyCallback\n    });\n  };\n&lt;\/script&gt;<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>                                    &lt;div class=\"form-group\"&gt;\n                                      &lt;label class=\"control-label col-md-3\" for=\"comment\"&gt; &lt;\/label&gt;\n                                      &lt;div class=\"col-md-9\"&gt;\n                                        &lt;div id=\"html_element\"&gt;&lt;\/div&gt;\n                                      &lt;\/div&gt;                                            \n                                    &lt;\/div&gt;\n<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>in case of JS Conflicts --- try a different position of <\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;script src=\"php\/webformsPHPajax2017.js?2021\"&gt;&lt;\/script&gt;\n<strong>&lt;script src=\"https:\/\/www.google.com\/recaptcha\/api.js?onload=onloadCallback&amp;render=explicit\" async defer&gt;&lt;\/script&gt;<\/strong>\n&lt;\/body&gt; <\/code><\/pre>\n\n\n\n<p>D:\\htdocs_xampp\\Latchiquads.com\\php<strong>\\webformsPHPajax2017.js<\/strong><\/p>\n\n\n\n<p>$(document).ready(function() {<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>var url = \"php\/contactus.php\";\n$('#send1').click(function(e){\n    e.preventDefault();\n    e.stopPropagation();\n    \/\/alert(\"send1\");\n\n  $.ajax({url: url, type: 'POST',\n  data:\n  {\n    name: escapeHTML($('#name').val()),\n    email: escapeHTML($('#email').val()),\n    phone: escapeHTML($('#phone').val()),\n    comments: escapeHTML($('#comment').val())<strong>,\n    token: escapeHTML($(\"#g-recaptcha-response\").val())<\/strong>\n  },\n  error: function() {\n      $(\"#alertMsg\").html('&lt;div class=\"alert alert-danger\"&gt;&lt;a href=\"#\" class=\"close\" data-dismiss=\"alert\" aria-label=\"close\"&gt;&amp;times;&lt;\/a&gt;&lt;strong&gt;Error!&lt;\/strong&gt; Something went wrong, check your email and retry!&lt;\/div&gt;');     \n  },\n  success: function(response){\n    console.log(response);\n    if (response==\"true\")                 \n      $(\"#alertMsg\").html('&lt;div class=\"alert alert-success\"&gt;&lt;a href=\"#\" class=\"close\" data-dismiss=\"alert\" aria-label=\"close\"&gt;&amp;times;&lt;\/a&gt;&lt;strong&gt;Success!&lt;\/strong&gt; We will reply ASAP!! See your email box for confirmation!&lt;\/div&gt;');\n    else      \n      $(\"#alertMsg\").html('&lt;div class=\"alert alert-danger\"&gt;&lt;a href=\"#\" class=\"close\" data-dismiss=\"alert\" aria-label=\"close\"&gt;&amp;times;&lt;\/a&gt;&lt;strong&gt;Error!&lt;\/strong&gt; Something went wrong, check your email and retry!&lt;\/div&gt;');      \n    }\n  });\n    return false;\n});<\/code><\/pre>\n\n\n\n<p>D:\\htdocs_xampp\\Latchiquads.com\\php<strong>\\contactus.php<\/strong><\/p>\n\n\n\n<p>$token = $_POST[&#8220;token&#8221;];<\/p>\n\n\n\n<p>function httpPost($token)<br>{<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$data = array(\n    \"secret\" =&gt; \"secret key\", \n    \"response\" =&gt; $token\n);    \nforeach($data as $key=&gt;$value) { $fields_string .= $key.'='.$value.'&amp;'; }\nrtrim($fields_string, '&amp;');\n\n$data_string = json_encode($data);                                                                                                         \n$ch = curl_init('https:\/\/www.google.com\/recaptcha\/api\/siteverify');                                                                      \ncurl_setopt($ch, CURLOPT_CUSTOMREQUEST, \"POST\");                                                                     \ncurl_setopt($ch, CURLOPT_POSTFIELDS, $fields_string);                                                                  \ncurl_setopt($ch, CURLOPT_RETURNTRANSFER, true);                                                                      \n\n$result = json_decode(curl_exec($ch));    \n\nreturn $result-&gt;success;<\/code><\/pre>\n\n\n\n<p>}<\/p>\n\n\n\n<p>function quickContactProcess($name,$email,$phone,$comments, $token) {<\/p>\n\n\n\n<p>$captchaOK = httpPost($token);<\/p>\n\n\n\n<p>if ($response == &#8220;false&#8221; || $captchaOK != 1) {<br>\/\/die (&#8220;The reCAPTCHA wasn&#8217;t clicked. Go Back and try it again.&#8221;);<br>$response = &#8220;false&#8221;;<br>} else {<br>$response = &#8220;true&#8221;;<br>}<\/p>\n\n\n\n<p>quickContactProcess($name,$email,$phone,$comments, $token);<br>?&gt;<\/p>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><a rel=\"noreferrer noopener\" href=\"http:\/\/www.poliscyprusquads.com\/contactus.html\" target=\"_blank\">http:\/\/www.poliscyprusquads.com\/contactus.html<\/a> <\/h2>\n\n\n\n<p><strong>soon!<\/strong><\/p>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><a href=\"http:\/\/www.polistaxicyprus.com\/contactus.html\" target=\"_blank\" rel=\"noreferrer noopener\">http:\/\/www.polistaxicyprus.com\/contactus.html<\/a> <\/h2>\n\n\n\n<p><strong>soon!<\/strong><\/p>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><a rel=\"noreferrer noopener\" href=\"http:\/\/www.polistaxicyprus.com\/contactus.html\" target=\"_blank\">http:\/\/www.polistaxi.com\/contacts.php<\/a><\/h2>\n\n\n\n<p><strong>soon!<\/strong><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Using HTML5, JS\/jQuery\/Ajax, CSS3, Bootstrap, PHP Documentation here: https:\/\/developers.google.com\/recaptcha\/docs\/display Practiced here: http:\/\/www.followthesun.com.cy\/contactus.php To-Do the same here in this Article Web Log\/Video Log: http:\/\/www.latchiquads.com\/contactus.html http:\/\/www.polistaxi.com\/contacts.php http:\/\/www.poliscyprusquads.com\/contactus.html Notes: http:\/\/www.latchiquads.com\/contactus.html in the webpage HTML5\/CSS3\/JS\/JQUERY code. http:\/\/www.latchiquads.com\/contactus.html D:\\htdocs_xampp\\Latchiquads.com\\php\\webformsPHPajax2017.js $(document).ready(function() { D:\\htdocs_xampp\\Latchiquads.com\\php\\contactus.php $token = $_POST[&#8220;token&#8221;]; function httpPost($token){ } function quickContactProcess($name,$email,$phone,$comments, $token) { $captchaOK = httpPost($token); if ($response == &#8220;false&#8221; || &hellip; <a href=\"https:\/\/www.leonidassavvides.com\/blog\/2021\/12\/google-recaptcha-in-a-web-form\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Google reCAPTCHA in a web form&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2,7,8,40,41,42,43],"tags":[],"class_list":["post-1314","post","type-post","status-publish","format-standard","hentry","category-android","category-design","category-dev","category-social","category-tablets","category-technical","category-tech"],"_links":{"self":[{"href":"https:\/\/www.leonidassavvides.com\/blog\/wp-json\/wp\/v2\/posts\/1314","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.leonidassavvides.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.leonidassavvides.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.leonidassavvides.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.leonidassavvides.com\/blog\/wp-json\/wp\/v2\/comments?post=1314"}],"version-history":[{"count":0,"href":"https:\/\/www.leonidassavvides.com\/blog\/wp-json\/wp\/v2\/posts\/1314\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.leonidassavvides.com\/blog\/wp-json\/wp\/v2\/media?parent=1314"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.leonidassavvides.com\/blog\/wp-json\/wp\/v2\/categories?post=1314"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.leonidassavvides.com\/blog\/wp-json\/wp\/v2\/tags?post=1314"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}