Попаднах на проблема, използвам reCAPTCHA за защита от спам ботове. Проблемът е, че когато потребителят въведе грешни знаци или остави captcha празен, той извежда съобщение за грешка. той също опреснява страницата и цялата информация, въведена от потребителя, се губи. Въпросът ми е как да покажа съобщение за грешка на reCAPTCHA без опресняване на страницата? напр. поле за предупреждение или дори по-добре div за скрита грешка, което показва, ако е въведен грешен captcha.
HTML
<form action="" method="post" enctype="multipart/form-data">
<div id="sc_header" style="margin-top: 11px;">Human check</div>
<p><?php
require_once('recaptchalib.php');
$publickey = "my_public_key_here";
echo recaptcha_get_html($publickey);
?></p>
<p style="float: left;"><input type="submit" value="Send"></p>
<input name="story-create" type="hidden" value="submit">
</form>
PHP
<?php
if ($_POST['story-create'] == "submit"){
require_once('inc/recaptchalib.php');
$privatekey = "my_private_key_here";
$resp = recaptcha_check_answer ($privatekey,
$_SERVER["REMOTE_ADDR"],
$_POST["recaptcha_challenge_field"],
$_POST["recaptcha_response_field"]);
if (!$resp->is_valid) {
// What happens when the CAPTCHA was entered incorrectly
die ("The reCAPTCHA wasn't entered correctly. Go back and try it again." .
"(reCAPTCHA said: " . $resp->error . ")");
} else {
}
}
?>