[英]Captcha not working in php , smarty
我正在嘗試在我的網站中實現驗證碼,但始終會給出錯誤錯誤的captcha-sol。
請看我的代碼
require_once('recaptchalib.php');
$publickey = "xxxxxxxxxxxxxx";
$privatekey = "xxxxxxxxxxxxxxxxxxxxxxxxx";
$resp = recaptcha_check_answer ($privatekey,$_SERVER["REMOTE_ADDR"],$_POST["recaptcha_challenge_field"],$_POST["recaptcha_response_field"]);
if ($resp->is_valid) {
echo "You got it!";
} else {
echo "Error=". $resp->error;
}
請檢查這里這是一個Ajax呼叫
看來validateCapture
的數據發送已中斷。 目前,您的AJAX通話中包含以下內容:
data: "recaptcha_challenge_field=" + challengeField +
"&recaptcha_response_field=" + responseField,
這將導致以下調試變量轉儲:
Array
(
[recaptcha_challenge_field] => 03AHJ_VuskQR9VZwr6Uo5DllF4CL1GHDLajHiTQGHI3SE2pryBlSW-BMVeWMAudfOaTmOZu8vAPx5DaYjFoIjxhursn-GnXQwGA4T8Mn1rLL7E8Vrz-xVRs9c4c0-Gb9FxFhlNjy257xiTmvWikzjmRfsa9I3PZQcDSwgDu7Gq6A_RBC9NrV-cyqw
[amp;recaptcha_response_field] => capture ceptICA
)
第二個密鑰看起來很錯誤,因為它包含編碼的“&”號。 您可能可以交換&
對於非urlencoded的價值&
,但我會傾向於選擇這樣的:
data: {
recaptcha_challenge_field: challengeField,
recaptcha_response_field: responseField
}
這是相同數據的哈希 ,因此感覺更干凈。 試試吧
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.