Esempio n. 1
0
 /**
  * Submits an HTTP POST to a reCAPTCHA server
  * @param string $host
  * @param string $path
  * @param array $data
  * @param int port
  * @return array response
  */
 public static function _recaptcha_http_post($host, $path, $data, $port = 80)
 {
     $req = Recaptcha::_recaptcha_qsencode($data);
     $http_request = "POST {$path} HTTP/1.0\r\n";
     $http_request .= "Host: {$host}\r\n";
     $http_request .= "Content-Type: application/x-www-form-urlencoded;\r\n";
     $http_request .= "Content-Length: " . strlen($req) . "\r\n";
     $http_request .= "User-Agent: reCAPTCHA/PHP\r\n";
     $http_request .= "\r\n";
     $http_request .= $req;
     $response = '';
     if (false == ($fs = @fsockopen($host, $port, $errno, $errstr, 10))) {
         die('Could not open socket');
     }
     fwrite($fs, $http_request);
     while (!feof($fs)) {
         $response .= fgets($fs, 1160);
     }
     // One TCP-IP packet
     fclose($fs);
     $response = explode("\r\n\r\n", $response, 2);
     return $response;
 }