reCAPTCHAを「ふたばちゃんねるスクリプト」(php製)に組み込む備忘録。
の前に
<script src="https://www.google.com/recaptcha/api.js"></script>
を追加。
<
form>タグ内に
<div class="g-recaptcha" data-sitekey="{取得したSite key}" style="transform:scale(0.77);-webkit-transform:scale(0.77);transform-origin:0 0;-webkit-transform-origin:0 0;"></div>
を追加。サイズを小さくするスタイルシートは
https://geekgoddess.com/how-to-resize-the-google-nocaptcha-recaptcha/
を参考にした。
function regist($name,$email,$sub,$com,$url,$pwd,$upfile,$upfile_name,$resto)の最初の方に
//reCAPTCHAの設定 if( !isset( $_POST['g-recaptcha-response'] ) ){ error("キャプチャが失敗しています!reCAPTCHAをクリックしてください!",$dest); }else{ // シークレットキー $secret_key = '"6Ld2LwwUAAAAAFohA5jTUrHjkEMEgp919yAhJP8H"' ; // エンドポイント $endpoint = 'https://www.google.com/recaptcha/api/siteverify?secret=' . $secret_key . '&response=' . $_POST['g-recaptcha-response'] ; // 判定結果の取得 $curl = curl_init() ; curl_setopt( $curl , CURLOPT_URL , $endpoint ) ; curl_setopt( $curl , CURLOPT_SSL_VERIFYPEER , false ) ; // 証明書の検証を行わない curl_setopt( $curl , CURLOPT_RETURNTRANSFER , true ) ; // curl_execの結果を文字列で返す curl_setopt( $curl , CURLOPT_TIMEOUT , 5 ) ; // タイムアウトの秒数 $captcha_return = curl_exec( $curl ) ; curl_close( $curl ) ; /* // JSONの出力を明示 header( 'Content-Type: application/json; charset=utf-8' ) ; */ // 結果の出力 $json =json_decode($captcha_return,true); if($json['success']==false){ error("キャプチャが失敗しています!reCAPTCHAを確認してください!",$dest); } }
を追加する。