Skip to content

Instantly share code, notes, and snippets.

@jonathanstark
Last active July 16, 2024 17:06
Show Gist options
  • Save jonathanstark/dfb30bdfb522318fc819 to your computer and use it in GitHub Desktop.
Save jonathanstark/dfb30bdfb522318fc819 to your computer and use it in GitHub Desktop.

Revisions

  1. jonathanstark renamed this gist Apr 1, 2015. 1 changed file with 0 additions and 0 deletions.
  2. jonathanstark created this gist Apr 1, 2015.
    22 changes: 22 additions & 0 deletions Verify Google reCAPTCHA
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,22 @@
    #
    # Verify captcha
    $post_data = http_build_query(
    array(
    'secret' => CAPTCHA_SECRET,
    'response' => $_POST['g-recaptcha-response'],
    'remoteip' => $_SERVER['REMOTE_ADDR']
    )
    );
    $opts = array('http' =>
    array(
    'method' => 'POST',
    'header' => 'Content-type: application/x-www-form-urlencoded',
    'content' => $post_data
    )
    );
    $context = stream_context_create($opts);
    $response = file_get_contents('https://www.google.com/recaptcha/api/siteverify', false, $context);
    $result = json_decode($response);
    if (!$result->success) {
    throw new Exception('Gah! CAPTCHA verification failed. Please email me directly at: jstark at jonathanstark dot com', 1);
    }