Wandbox
SettingsLog
SettingsLog
Language
GitHubLogin
Ran/Viewed Log

contact-index.php

Language

PHP

Compiler

php 8.0.3

Options

contact-index.php

$ php prog.php
 <!-- *** google reCAPTHA *** -->
 <script>
  //.g-recaptcha タグの data-callback 属性で指定したコールバック関数の定義
  var myAlert = function(response) {
    alert("チェックボックスがチェックされました!");
  };

  var verifyCallback = function(response) { //コールバック関数の定義
    //#warning の p 要素のテキストを空にf
    document.getElementById("warning").textContent = '';
    //#send の button 要素の disabled 属性を解除
    document.getElementById("send").disabled = false;
  };
  var expiredCallback = function() { //コールバック関数の定義
    //#warning の p 要素のテキストに文字列を設定
    document.getElementById("warning").textContent = '送信するにはチェックを入れてください。';
    //#send の button 要素に disabled 属性を設定
    document.getElementById("send").disabled = true;
  };
  <script>

  <!-- google reCAPTHA -->
<div class="g-recaptcha" data-sitekey="上で取得してきた公開鍵" data-callback="myAlert"></div>   
<p id="warning"></p>

Warning: Undefined variable $error in /home/jail/prog.php on line 25

Warning: Trying to access array offset on value of type null in /home/jail/prog.php on line 25
<div class="wrap_btn">
  <button id="send" class="btn_st arrow bg_yellow">確認する</button>
</div>

<!-- google reCAPTHA -->
    <script src="https://www.google.com/recaptcha/api.js" async defer><script><!-- API の読み込み -->

	function checkRechaptha() {

// reCAPTCHA サイトキー
$siteKey = 取得した公開鍵;
// reCAPTCHA シークレットキー
$secretKey = 取得した秘密鍵;
 
$result_status = '';  // 結果を表示する文字列を初期化
// トークンが送信されたら
if ( isset( $_POST[ 'g-recaptcha-response' ] ) ) {
 
  //API Request URL(リクエストを送る API の URL)
  $url = 'https://www.google.com/recaptcha/api/siteverify';
  //パラメータを指定
  $data = array(
    'secret' => $secretKey, //シークレットキー
    'response' =>  $_POST[ 'g-recaptcha-response' ]
  );
  //POST メソッドを使用
  $context = array(
    'http' => array(
      'method'  => 'POST',
      'header'  => implode("\r\n", array('Content-Type: application/x-www-form-urlencoded',)),
      'content' => http_build_query($data)
    )
  );
  //上記パラメータを指定して file_get_contents で API Response を取得
  $api_response = file_get_contents($url, false, stream_context_create($context));

// JSON をデコード
  $result = json_decode( $api_response );
  // トークンが有効な場合
  if ( $result->success ) {
    return true;
    // 成功した場合の処理(メールの送信など)を実行(または結果を変数に入れて、その変数を使って処理を分岐するなど)
 

/*
 固定ページ お問い合わせ
 お問い合わせフォーム 入力画面
*/
// 他のサイトでインラインフレーム表示を禁止する(クリックジャッキング対策)
header('X-FRAME-OPTIONS: SAMEORIGIN');  

// 不正アクセスチェック
if(!$noindexaccess){
    header("HTTP/1.0 404 Not Found");exit();
}
// 不正アクセスチェック
if(!$noindexaccess || isBot()){
    header("HTTP/1.0 404 Not Found");exit();
}

echo '<div style="color:red;">';
 // エラーメッセージがあったら表示する
echo ($error_mes)?'
---------------------<br />
 入力エラーです<br />
---------------------<br />'.$error_mes:"";
echo '</div>';

$subject_value = isset($subject) ? htmlspecialchars($subject, ENT_QUOTES) : '';
$namae_value = isset($namae) ? htmlspecialchars($namae, ENT_QUOTES) : '';
$email_value = isset($email) ? htmlspecialchars($email, ENT_QUOTES) : '';
$message_value = isset($message) ? htmlspecialchars($message, ENT_QUOTES) : '';

//送信時のデータ形式を指定する
echo '<form name="toiawase" method="post" enctype="multipart/form-data" action="
Fatal error: Uncaught Error: Call to undefined function esc_url() in /home/jail/prog.php:100
Stack trace:
#0 {main}
  thrown in /home/jail/prog.php on line 100
Exit Code:
255