Die Integration von google reCaptcha in ein bestehendes ZVV
kürzlich meine Website erhalten hat, eine Menge von spam über meine Zahlungen form, und ich habe mich entschieden, ich muss noch ein captcha
um dies zu verhindern.
Ich war auf der Suche auf ein paar Optionen und ich beschlossen zu gehen mit Googles reCaptcha
. Es scheint einfach genug einzurichten und zu verwenden, aber ich ' ve wurde läuft in ein paar Probleme.
Erstens habe ich diese script
im header der form:
<script src='https://www.google.com/recaptcha/api.js'></script>
Habe ich dann die eigentlich captcha
sich am Fuß des Formulars:
<div class="g-recaptcha" data-sitekey="6LdOVv4SAAAAAJ4muJvo_vD7vsd9T9QIfkEwcO7y"></div>
Wenn ich das Formular abschicken ich Folgendes tun:
$captcha = $_POST["g-recaptcha-response"]; //Get Captcha token
$secret_key = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"; //Get Secret key
$google_response = http_get("https://www.google.com/recaptcha/api/siteverify", array("secret"=>$secret, "response"=>$captcha), $info); //perform Get request
print_r($info);
Aber nichts ist passiert, in der Tat die Seite, die Sie verwendet, um die Arbeit hängt nur und nicht einmal eine Fehlermeldung angezeigt. Irgendwelche Ideen was ich tun könnte falsch? Von meinem Verständnis der Dokumentation, die Antwort wird in JSON
und der Erfolg wird entweder true oder false sein, ich würde gerne weiterhin mit der Zahlung, wenn wahr oder beenden und zurückkehren zu dem Formular, wenn false.
jede Hilfe wird sehr geschätzt. Oder hat jemand eine alternative Lösung, um das hinzufügen eines captcha wäre ich bereit zu prüfen.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Versuchen, diese auf google-neue recaptcha 2015:
Nicht verwenden, file_get_contents. Google empfiehlt die Verwendung von POST-Requests nennen api. GET-Anfragen wie oben können mehrere Probleme:
Daher so etwas wie das:
Auch die Validierung der Teil ist mehr konservativ in dem, was er akzeptiert als 'validiert'.
CURLOPT_SSL_VERIFYPEER => 0
im array, wenn Sie nicht SSL-Zertifikat für den Anruf (was ich denke ist nicht die sicherste Art und Weise der Umsetzung ein Sicherheits-feature !)