gpt4 book ai didi

php空间不支持socket但支持curl时recaptcha的用法

转载 作者:qq735679552 更新时间:2022-09-29 22:32:09 25 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章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>  。

最后此篇关于php空间不支持socket但支持curl时recaptcha的用法的文章就讲到这里了,如果你想了解更多关于php空间不支持socket但支持curl时recaptcha的用法的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com