一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - PHP教程 - php空間不支持socket但支持curl時recaptcha的用法

php空間不支持socket但支持curl時recaptcha的用法

2019-12-16 14:23PHP教程網 PHP教程

php空間不支持socket但支持curl時recaptcha的用法,需要的朋友可以參考下。

1.修改recaptchalib.php中的兩個方法 

復制代碼代碼如下:


function _recaptcha_http_post($host, $path, $data, $port = 80) { 
$req = _recaptcha_qsencode ($data); 
$response = ''; 
$url = $host.$path; 
$post_data = $req; 
$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, $url); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
// 我們在POST數據哦! 
curl_setopt($ch, CURLOPT_POST, 1); 
// 把post的變量加上 
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data); 
$output = curl_exec($ch); 
curl_close($ch); 
//echo $output; 
$response = $output; 
return $response; 

function recaptcha_check_answer ($privkey, $remoteip, $challenge, $response, $extra_params = array()) 

if ($privkey == null || $privkey == '') { 
die ("To use reCAPTCHA you must get an API key from <a href='https://www.google.com/recaptcha/admin/create'>https://www.google.com/recaptcha/admin/create</a>"); 

if ($remoteip == null || $remoteip == '') { 
die ("For security reasons, you must pass the remote ip to reCAPTCHA"); 

//discard spam submissions 
if ($challenge == null || strlen($challenge) == 0 || $response == null || strlen($response) == 0) { 
$recaptcha_response = new ReCaptchaResponse(); 
$recaptcha_response->is_valid = false; 
$recaptcha_response->error = 'incorrect-captcha-sol'; 
return $recaptcha_response; 

$response = _recaptcha_http_post (RECAPTCHA_VERIFY_SERVER, "/recaptcha/api/verify", 
array ( 
'privatekey' => $privkey, 
'remoteip' => $remoteip, 
'challenge' => $challenge, 
'response' => $response 
) + $extra_params 
); 
$answers = explode ("\n", $response [1]); 
$recaptcha_response = new ReCaptchaResponse(); 
$pos = strpos($response, 'true'); 
if ($pos === false) { 
$recaptcha_response->is_valid = false; 
$recaptcha_response->error = $response; 
} else { 
$recaptcha_response->is_valid = true; 

return $recaptcha_response; 


2.demo.php 

復制代碼代碼如下:


<html> 
<body> 
<form action="" method="post"> 
<?php 
require_once('recaptchalib.php'); 
// Get a key from https://www.google.com/recaptcha/admin/create 
$publickey = "你的公共key ---自己去http://www.google.com/recaptcha申請"; 
$privatekey = "你的私有key ---自己去http://www.google.com/recaptcha申請"; 
# the response from reCAPTCHA 
$resp = null; 
# the error code from reCAPTCHA, if any 
$error = null; 
# was there a reCAPTCHA response? 
if ($_POST["recaptcha_response_field"]) { 
$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 { 
# set the error code so that we can display it 
$error = $resp->error; 
echo $error; 
//echo $_POST["recaptcha_challenge_field"]; 
//echo $_POST["recaptcha_response_field"]; 


echo recaptcha_get_html($publickey, $error); 
?> 
<br/> 
<input type="submit" value="submit" /> 
</form> 
</body> 
</html> 

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 四虎影视在线永久免费观看 | 国产精品久久久 | 日本一区三区 | 久久理论片迅播影院一级 | 亚洲国产成人99精品激情在线 | 久久er99热精品一区二区 | 亚欧有色在线观看免费版高清 | 精品亚洲视频在线观看 | 国产成人一区二区三区在线视频 | 黄情视频 | 禁止的爱善良的未删减版hd | 免费国产成人α片 | 国产精品视频久久久久 | 国产精品热久久毛片 | 久久久免费热线精品频 | 疯狂伦交1一6 小说 风间由美在线 | 国产日产韩产麻豆1区 | 香蕉在线精品一区二区 | 午夜人妻理论片天堂影院 | 国产午夜亚洲精品理论片不卡 | 99精品国产成人一区二区 | 日本三级在丈面前被耍了 | 九九99热久久精品在线6 | 91久久精品国产一区二区 | 日本一道本视频 | 国产自产一区c | 视频精品一区二区三区 | 免费视频片在线观看 | 色综色天天综合网 | 日本伊人色 | 欧美一级裸片又黄又裸 | 草榴色导航 | 亚洲欧美另类专区 | 亚洲国产货青视觉盛宴 | 性一交一乱一伧老太 | 91久久精品国产亚洲 | 欧美日韩一级视频 | 精品国产麻豆免费人成网站 | 久久久久久久久a免费 | 青青草国产精品 | 国产乱子伦真实china |