{"id":25876,"date":"2021-06-16T16:44:00","date_gmt":"2021-06-16T13:44:00","guid":{"rendered":"https:\/\/themewp.inform.click\/?p=25876"},"modified":"2021-10-17T20:16:12","modified_gmt":"2021-10-17T17:16:12","slug":"opas-hcaptcha-integraatiosta-php-hen","status":"publish","type":"post","link":"https:\/\/themewp.inform.click\/fi\/opas-hcaptcha-integraatiosta-php-hen\/","title":{"rendered":"Opas hCaptcha-integraatiosta PHP: hen"},"content":{"rendered":"<p>\u00c4skett\u00e4in yksi lukijoistamme kysyi hCapctha-integraatiosta verkkosivustolla. <a href=\"https:\/\/www.hcaptcha.com\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">HCaptcha<\/a> on mukava vaihtoehto Google reCAPTCHA palveluun. T\u00e4ss\u00e4 artikkelissa tutkitaan, miten hCapctha voidaan lis\u00e4t\u00e4 PHP: n kanssa verkkosivustoonsa.<\/p>\n<p>On aina suositeltavaa, ett\u00e4 verkkosivuilla on captcha. Roskapostit ovat todella huonoja, ja se vain turhauttaa sinua. Et koskaan halua tuhlata arvokasta aikaa v\u00e4\u00e4rennettyjen \/ tarpeettomien kommenttien poistamiseen.<\/p>\n<p>K\u00e4ytt\u00e4m\u00e4ll\u00e4 hCaptchaa k\u00e4ytt\u00e4j\u00e4n on ratkaistava haasteet ennen lomakkeen l\u00e4hett\u00e4mist\u00e4. Lomakkeen tulisi jatkua vain, jos captcha l\u00e4p\u00e4isee vahvistuksen. Integroimalla captcha, se s\u00e4\u00e4st\u00e4\u00e4 tonnia roskapostia p\u00e4\u00e4sem\u00e4st\u00e4 tietokantaan ja postilaatikkoosi. Koska vain oikea ihminen voi ratkaista captchan pulmia.<\/p>\n<p>T\u00e4m\u00e4n j\u00e4lkeen katsotaanpa hCaptchan integrointi PHP: hen. Se vaatii tarkistamaan hCaptcha-vastauksen palvelinpuolella. Kirjoitamme palvelinpuolen koodin sek\u00e4 cURL- ett\u00e4 Guzzle-kirjastolla. K\u00e4ytt\u00e4j\u00e4 voi k\u00e4ytt\u00e4\u00e4 mit\u00e4 tahansa niist\u00e4.<\/p>\n<h3>P\u00e4\u00e4st\u00e4 alkuun<\/h3>\n<p>Sinun on ensin luotava tili <a href=\"https:\/\/www.hcaptcha.com\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">hCaptcha-<\/a> palvelulla. Toisin kuin Google reCAPTCHA, voit k\u00e4ytt\u00e4\u00e4 hCaptcha-avaimia suoraan verkkosivustollasi. Sinun ei tarvitse rekister\u00f6id\u00e4 verkkotunnustasi heid\u00e4n kanssaan.<\/p>\n<p>Mutta jos haluat, voit lis\u00e4t\u00e4 verkkotunnuksesi napsauttamalla <strong> Uusi sivusto<\/strong> -painiketta. Se avaa lomakkeen, jossa sinun on siirrett\u00e4v\u00e4 verkkotunnuksesi Is\u00e4nt\u00e4nimet-kentt\u00e4\u00e4n.<\/p>\n<p>Napsauta sitten taulukon asetuskuvaketta ja tartu sivustoavaimeen.<\/p>\n<p><a href=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20195-6081cb5f289f4.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-20195-6081cb5f289f4.png\" alt=\"Opas hCaptcha-integraatiosta PHP: hen\" ><\/a><\/p>\n<p>Tartu salaisen avaimen napsauttamalla Asetukset-v\u00e4lilehte\u00e4.<\/p>\n<p><a href=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20195-6081cb5fbc9c8.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-20195-6081cb5fbc9c8.png\" alt=\"Opas hCaptcha-integraatiosta PHP: hen\" ><\/a><\/p>\n<p>Kun olet valmis avaimilla, sinun on noudatettava 2 vaihetta. Lis\u00e4\u00e4 ensin hCaptcha lomakkeeseesi. Vahvista sitten captcha-vastaus palvelinpuolella.<\/p>\n<p>Luodaan yksinkertainen lomake ja lis\u00e4t\u00e4\u00e4n siihen hCaptcha seuraavasti.<\/p>\n<pre><code>&lt;form action=\"\" method=\"POST\"&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;input type=\"text\" name=\"email\" placeholder=\"Email\" \/&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;input type=\"password\" name=\"password\" placeholder=\"Password\" \/&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;div class=\"h-captcha\" data-sitekey=\"YOUR_SITE_KEY\"&gt;&lt;\/div&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;br \/&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;input type=\"submit\" name=\"submit\" value=\"Submit\" \/&gt;\n&lt;\/form&gt;\n&lt;script src=\"https:\/\/hcaptcha.com\/1\/api.js\" async defer&gt;&lt;\/script&gt;<\/code><\/pre>\n<p>T\u00e4ss\u00e4 olemme sis\u00e4llytt\u00e4neet hCaptchan JavaScript-kirjaston ja lis\u00e4nneet luokan <code>h-captcha<\/code>div-s\u00e4il\u00f6\u00f6n. Sinun on my\u00f6s v\u00e4litett\u00e4v\u00e4 sivustoavain tietom\u00e4\u00e4ritteelle <strong>data-sitekey<\/strong>.<\/p>\n<p>Lataa sivu uudelleen ja sinun pit\u00e4isi nyt n\u00e4hd\u00e4 hCaptcha-valintaruutu, joka on lis\u00e4tty lomakkeeseen. Katsotaanpa nyt, miten captcha-vastaus vahvistetaan.<\/p>\n<h3>Vahvista hCaptcha-vaste k\u00e4ytt\u00e4m\u00e4ll\u00e4 cURL: \u00e4\u00e4<\/h3>\n<p>Kun k\u00e4ytt\u00e4j\u00e4 l\u00e4hett\u00e4\u00e4 lomakkeen captchan kanssa, sinun on vahvistettava captcha-vastaus palvelinpuolella. Vahvistusta varten sinun on l\u00e4hetett\u00e4v\u00e4 POST-pyynn\u00f6t hCaptchan p\u00e4\u00e4tepisteeseen <code>https:\/\/hcaptcha.com\/siteverify<\/code>. POST-pyynn\u00f6ss\u00e4 parametrit ovat salainen avain ja h-captcha-response (joka tulee l\u00e4hetetyst\u00e4 lomakkeesta).<\/p>\n<p>PHP: ss\u00e4 voimme k\u00e4ytt\u00e4\u00e4 sek\u00e4 cURL: \u00e4\u00e4 ett\u00e4 Guzzlea vuorovaikutuksessa ulkoisen palvelimen kanssa. Kun l\u00e4het\u00e4t pyynt\u00f6j\u00e4 cURL: n kautta, varmista, ett\u00e4 cURL-laajennus on k\u00e4yt\u00f6ss\u00e4 palvelimellasi.<\/p>\n<p>Jos kyseess\u00e4 on cURL, koodisi on seuraava hCaptcha-vastauksen vahvistamiseksi.<\/p>\n<pre><code>&lt;?php\nif (isset($_POST['submit'])) {\n\u00a0\u00a0\u00a0\u00a0$data = array(\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'secret' =&gt; \"YOUR_SECRET_KEY\",\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'response' =&gt; $_POST['h-captcha-response']\n\u00a0\u00a0\u00a0\u00a0);\n\u00a0\u00a0\u00a0\u00a0$ch = curl_init();\n\u00a0\u00a0\u00a0\u00a0curl_setopt($ch, CURLOPT_URL, \"https:\/\/hcaptcha.com\/siteverify\");\n\u00a0\u00a0\u00a0\u00a0curl_setopt($ch, CURLOPT_POST, true);\n\u00a0\u00a0\u00a0\u00a0curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));\n\u00a0\u00a0\u00a0\u00a0curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);\n\u00a0\u00a0\u00a0\u00a0$response = curl_exec($ch);\n\u00a0\u00a0\u00a0\u00a0$responseData = json_decode($response);\n\u00a0\u00a0\u00a0\u00a0if($responseData-&gt;success) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\/\/ proceed the form\n\u00a0\u00a0\u00a0\u00a0} else {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0echo 'Robot verification failed, please try again.';\n\u00a0\u00a0\u00a0\u00a0}\n}\n?&gt;<\/code><\/pre>\n<p>Korvaa paikkamerkki todellisella arvolla. Yll\u00e4 olevassa koodissa tarkistamme, onko <code>success<\/code>muuttuja tosi vastauksessa. Jos se on totta, lomake on turvallinen edet\u00e4.<\/p>\n<h3>Vahvista hCaptcha Response Guzzlella<\/h3>\n<p><a href=\"https:\/\/themewp.inform.click\/fi\/kuinka-kayttaa-guzzlea-php-http-asiakas-http-pyyntojen-lahettamiseen\/\" title=\"Guzzle\">Guzzle<\/a> on vaihtoehto cURL: lle. Se tarjoaa sinulle paljon puhtaamman koodin kuin cURL. Jos k\u00e4yt\u00e4t Guzzlea, sinun ei tarvitse olla CURL-laajennusta palvelimellasi.<\/p>\n<p>Aloittamiseksi sinun on ensin asennettava Guzzle-kirjasto projektiisi. Suorita alla oleva komento kirjaston asentamiseksi.<\/p>\n<pre><code>composer require guzzlehttp\/guzzle<\/code><\/pre>\n<p>Kirjoita t\u00e4m\u00e4n j\u00e4lkeen koodi, joka vahvistaa hCAPTCHA-vastauksen Guzzlen kirjastolla.<\/p>\n<pre><code>&lt;?php\nrequire_once 'vendor\/autoload.php';\n\u00a0\nuse GuzzleHttpClient;\n\u00a0\nif (isset($_POST['submit'])) {\n\u00a0\n\u00a0\u00a0\u00a0\u00a0$client = new Client([\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\/\/ Base URI is used with relative requests\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'base_uri' =&gt; 'https:\/\/hcaptcha.com',\n\u00a0\u00a0\u00a0\u00a0]);\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\n\u00a0\u00a0\u00a0\u00a0$response = $client-&gt;request('POST', '\/siteverify', [\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'form_params' =&gt; [\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'secret' =&gt; \"YOUR_SECRET_KEY\",\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'response' =&gt; $_POST['h-captcha-response']\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0]\n\u00a0\u00a0\u00a0\u00a0]);\n\u00a0\n\u00a0\u00a0\u00a0\u00a0$body = $response-&gt;getBody();\n\u00a0\u00a0\u00a0\u00a0$arr_body = json_decode($body);\n\u00a0\u00a0\u00a0\u00a0if($arr_body-&gt;success) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\/\/ proceed the form\n\u00a0\u00a0\u00a0\u00a0} else {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0echo 'Robot verification failed, please try again.';\n\u00a0\u00a0\u00a0\u00a0}\n}\n?&gt;<\/code><\/pre>\n<p>Toivottavasti ymm\u00e4rr\u00e4t hCaptcha-integraation PHP: n kanssa k\u00e4ytt\u00e4m\u00e4ll\u00e4 cURL: \u00e4\u00e4 ja Guzzlea. Jaa ajatuksesi ja ehdotuksesi alla olevassa kommenttiosassa.<\/p>\n<h4>Aiheeseen liittyv\u00e4t artikkelit<\/h4>\n<ul>\n<li><a href=\"https:\/\/themewp.inform.click\/fi\/teksti-puheeksi-kayttamalla-amazon-pollya-php-ssa\/\" title=\"Teksti puheeksi k\u00e4ytt\u00e4m\u00e4ll\u00e4 Amazon Polly\u00e4 PHP: ss\u00e4\">Teksti puheeksi k\u00e4ytt\u00e4m\u00e4ll\u00e4 Amazon Polly\u00e4 PHP: ss\u00e4<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/fi\/kuinka-lisata-twitter-oauth-kirjautumista-verkkosivustolle-php-n-avulla\/\" title=\"Kuinka lis\u00e4t\u00e4 Twitter OAuth -kirjautumista verkkosivustolle PHP: n avulla\">Kuinka lis\u00e4t\u00e4 Twitter OAuth -kirjautumista verkkosivustolle PHP: n avulla<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/fi\/pakkaa-kuvat-verkkosivustolle-kayttamalla-resmush-it-ohjelmaa-php-ssa\/\" title=\"Pakkaa kuvat verkkosivustolle k\u00e4ytt\u00e4m\u00e4ll\u00e4 reSmush.it-ohjelmaa PHP: ss\u00e4\">Pakkaa kuvat verkkosivustolle k\u00e4ytt\u00e4m\u00e4ll\u00e4 reSmush.it-ohjelmaa PHP: ss\u00e4<\/a><\/li>\n<\/ul>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/artisansweb.net\" class=\"external external_icon\">artisansweb.net<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Haluatko tiet\u00e4\u00e4 hCaptcha-integraatiosta PHP: hen? T\u00e4ss\u00e4 artikkelissa tutkitaan, miten cURL: \u00e4\u00e4 ja Guzzlea k\u00e4ytet\u00e4\u00e4n ja miten hCaptcha integroidaan<\/p>\n","protected":false},"author":1,"featured_media":21620,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[275],"tags":[843],"class_list":["post-25876","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-php-6","tag-affiai-fi"],"_links":{"self":[{"href":"https:\/\/themewp.inform.click\/fi\/wp-json\/wp\/v2\/posts\/25876","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/themewp.inform.click\/fi\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/themewp.inform.click\/fi\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/fi\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/fi\/wp-json\/wp\/v2\/comments?post=25876"}],"version-history":[{"count":0,"href":"https:\/\/themewp.inform.click\/fi\/wp-json\/wp\/v2\/posts\/25876\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/fi\/wp-json\/wp\/v2\/media\/21620"}],"wp:attachment":[{"href":"https:\/\/themewp.inform.click\/fi\/wp-json\/wp\/v2\/media?parent=25876"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/themewp.inform.click\/fi\/wp-json\/wp\/v2\/categories?post=25876"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/themewp.inform.click\/fi\/wp-json\/wp\/v2\/tags?post=25876"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}