前提・実現したいこと
reCAPTCHA V2(チェックボックス)を現在実装中の画面に入れたいと思っています。
初めて、reCAPTCHAのサービスを使用するので、調査しながらの作業になっています。
チェックをいれて、サーバー側[PHP]の実装までは、とりあえずプログラムを書きましたが、
その認証成功後の処理の記述がわかりません。
具体的にいうと、認証成功時に登録ボタンを非活性から活性に変更したいです。
(いろいろなサイトでよくある仕組みですが、どのように実装すればよいのか・・・)
追記:
認証成功したら「登録」ボタンを活性にして、「登録」ボタンを押下で、メールを送信する流れとなります。
お力を貸してください。
該当のソースコード
HTML
1<!DOCTYPE html> 2<html lang="ja"> 3<head> 4<meta charset="UTF-8"> 5 6<title>メールアドレス画面</title>> 7<script src="https://www.google.com/recaptcha/api.js" async defer></script> 8</head> 9<body> 10<main> 11 <div> 12 <dl> 13 <dt>メールアドレス入力</dt> 14 <dd> 15 <input name="mail" type="text"> 16 <button type="submit" id="registMail">登録</button> 17 </dd> 18 </dl> 19 </div> 20 <form action="?" method="POST"> 21 <div class="g-recaptcha" data-sitekey=""></div><br /> 22 <input type="submit" value="Submit" /> 23 </form> 24</main> 25</body> 26</html>
PHP
1<?php 2 $url = 'https://www.google.com/recaptcha/api/siteverify'; 3 4 $post_data = array( 5 'secret' => 'キー', 6 'response' => $_REQUEST['g-recaptcha-response'], 7 'remoteip' => $_SERVER['REMOTE_ADDR'], 8 ); 9 $options = array( 10 'http' => array( 11 'method' => 'POST', 12 'header' => 'Content-type: application/x-www-form-urlencoded', 13 'content' => http_build_query($post_data), 14 ) 15 ); 16 17 $context = stream_context_create($options); 18 $res = json_decode(file_get_contents($url, false, $context)); 19 20 if ($res->success == 1) { 21 // 認証成功 22 } else { 23 // 認証失敗 24 } 25 26?>
回答1件
あなたの回答
tips
プレビュー