Google Recaptcha doğrulama
İstemci tarafında jquery validation kütüphanesini kullanıyorum.
jQuery.validator.addMethod("checkCaptcha", function() {
var bfr = false;
var phpquery = $.ajax({url: "your-url.php?action=recaptcha",
type: "POST",
async: false,
data:{recaptcha_challenge_field:Recaptcha.get_challenge(),recaptcha_response_field:Recaptcha.get_response()},
success:function(data) {
var return = $('<div />').html(data).find('.return').attr("id");
if(return == "recaptcha_false"){
Recaptcha.reload();
}else{
bfr = true;
}
}
});
if(bfr){
return true;
}
},"");
$("#your-id").validate({
rules: {
recaptcha_response_field: {
required: true,
checkCaptcha: true
},
},
messages: {
recaptcha_response_field: {
required: "Please enter the code",
checkCaptcha: "Code is wrong, please retype it"
},
},
submitHandler : function () {
//
}
});
switch($action){
case "recaptcha":
function returnResult($status, $omschrijving){
$result = array(
'status' => $status,
'omschrijving' => $omschrijving
);
echo $result[status];
}
require_once '../recaptcha/recaptchalib.php';
$privatekey = "your-key";
$resp = recaptcha_check_answer ($privatekey,
$_SERVER["REMOTE_ADDR"],
$_POST["recaptcha_challenge_field"],
$_POST["recaptcha_response_field"]);
if (!$resp->is_valid) {
$status = '<div class="return" id="recaptcha_false"></div>';
$omschrijving = "Captcha is not correct";
returnResult($status, $omschrijving);
} else {
$status = '<div class="return" id="recaptcha_true"></div>';
$omschrijving = "Captcha is correct";
returnResult($status, $omschrijving);
}
break;
}
Gönderi içerir "PHP" Görüntüleme 6809 Yayımlandı 24/02/2018
All Comments (0)