質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

解決済

1回答

586閲覧

reCAPTCHA v3の設定を教えてください

cancancan

総合スコア22

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

0クリップ

投稿2023/02/16 09:09

実現したいこと

こちらのページを参考にreCAPTCHA v3の設定をしたいのですがうまくいきません。
https://www.webdesignleaves.com/pr/plugins/google_recaptcha.php
php、javascriptに詳しいから教えていただけないでしょうか。
よろしくお願い致します。

※ファイルのコードが膨大なので一部省略しています。

発生している問題・エラーメッセージ

送信しようとすると「このページは動作していません」と表示されます。 エラーコード: sent in stderr: "PHP message: PHP Fatal error: Uncaught Error: Class 'ReCaptcha\ReCaptcha' not found in /var/www/www.abc.com/htdocs/inquiry/send.php

該当のソースコード

■ファイル(1) index.html <form id="rc_form"> <button class="c-link-block -center -wide-s" type="submit"> </form> <script src="https://www.google.com/recaptcha/api.js?render=[サイトキー]"></script> <script> window.addEventListener('DOMContentLoaded', function(){ //フォーム要素に submit イベントを設定 $('#rc_form').submit(function(event) { //デフォルトの動作(送信)を停止 event.preventDefault(); //トークンを取得 grecaptcha.ready(function() { grecaptcha.execute('[サイトキー]', {action: 'inquiry'}).then(function(token) { //input 要素を生成して値にトークンを設定 $('#rc_form').prepend('<input type="hidden" name="recaptchaResponse" value="' + token + '">'); //input 要素を生成して値にアクション名を設定 $('#rc_form').prepend('<input type="hidden" name="action" value="homepage">'); //unbind で一度 submit のイベントハンドラを削除してから submit() を実行 $('#rc_form').unbind('submit').submit(); });; }); }); }) </script> ■ファイル(2) send.php <?php $secret = 'abc'; $recaptcha = new \ReCaptcha\ReCaptcha($secret); $resp = $recaptcha->setExpectedHostname('example.com') ->setExpectedAction('homepage') ->setScoreThreshold(0.5) ->verify($gRecaptchaResponse, $remoteIp); if ($resp->isSuccess()) { // Verified! 認証成功 } else { $errors = $resp->getErrorCodes(); }

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

Class 'ReCaptcha\ReCaptcha' not found

というエラーが表示されていますのでクラスが読み込めていないのかと思います。

コードの省略部分が不明ですが、 autoload.php を読み込んでいないのでは無いでしょうか。

投稿2023/02/16 14:50

Eggpan

総合スコア2727

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

cancancan

2023/02/17 08:53

教えていただきありがとうございます。 参考サイトの下の方に書いていたコードでやりたかったことができました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問