Ich habe ein einfaches Kontaktformular mit mehreren erforderlichen Feldern, die gut funktioniert. Ich versuche, reCaptcha dem Formular für zusätzlichen Spamschutz hinzuzufügen.CodeIgniter reCaptcha und Form_validation Klasse
Ich habe die ReCaptcha auf dem Formular korrekt angezeigt, ich habe meine Schlüssel installiert. In meinem Controller kann ich die recaptcha_check_answer Methode aufrufen und gültige Antworten zurück erhalten. Ich habe alle Dateien installiert und korrekt konfiguriert, da ich die Methoden aus der Klasse recaptcha verwenden und gute Antworten erhalten kann.
Mein Problem ist, dass ich möchte eine ungültige ReCaptcha einen CI-Formular_validation Fehler auslösen, aber ich habe viel Zeit auf diese und kann nicht ausgelöst werden. Ich bin ziemlich neu in CI, entschuldige meine Unwissenheit, wenn das etwas Einfaches ist.
Ich habe versucht, einen form_validation Fehler zu werfen, wenn die is_valid Antwort zurück NULL kommt. Wenn NULL dann habe ich versucht, die folgendes zu tun:
$this->form_validation->set_message('recaptcha_response_field', 'reCaptcha', lang('recaptcha_incorrect_response'));
echo form_error('recaptcha_response_field');
Hier ist, was die reCaptcha API Antworten wie die für gültige und ungültige captcha aussehen:
Valid = stdClass Object ([0] => is_valid [1] => error [is_valid] => 1)
Invalid = stdClass Object ([0] => is_valid [1] => error [is_valid] => [error] => incorrect-captcha-sol)
Hier ist der Code, den ich in meinem Controller verwenden:
Ich habe die Umleitungen und Kontakt-E-Mail am Ende des Formulars auskommentiert, bis ich dieses Problem beheben kann.
Vielen Dank im Voraus für Ihre Hilfe!