2017-05-21 4 views
1

Google 웹 페이지 양식에 ReCaptcha를 추가하려고하는데 문제가 있습니다. 어떤 이유로 나는 $ captcha 변수에 "정의되지 않은 변수"오류가 발생했으며 'g-recaptcha-response'에 대해서는 "정의되지 않은 색인"오류가 발생했습니다.reCaptcha 문제, PHP 통지 색인이 정의되지 않았습니다.

<form name="contact form" method="POST" action="sendemail_1.php" id="main-contact-form"> 
    <div class="form-group"> 
     <input type="text" name="name" id="names" class="form-control" required="required" placeholder="Name"> 
    </div> 
    <div class="form-group"> 
     <input type="email" name="email" id="emails" class="form-control" required="required" placeholder="Email"> 
    </div> 
    <div class="form-group"> 
     <input type="text" name="number" id="numbers" class="form-control" required="required" placeholder="Number"> 
    </div> 
    <div class="form-group"> 
     <textarea name="message" id="messages" required="required" class="form-control" rows="8" placeholder="Your text here"></textarea> 
    </div> 
    <div class="form-group"> 
     <div class="g-recaptcha" data-sitekey="6LeVTyIUAAAAAHsB-2XIbO8x59nqi2yhesv98Xo7"></div> 
    </div> 
    <div class="form-group"> 
     <input type="submit" name="submit" class="btn btn-submit" value="Submit"> 
    </div> 
</form> 

가 사전에 감사합니다

여기
<?php 
require 'PHPMailer/PHPMailerAutoload.php'; 

$name = $_REQUEST['names']; 
$number = $_REQUEST['cell']; 
$email = $_REQUEST['email']; 
$message = $_REQUEST['message']; 
$captcha = null; 

if(isset($_POST['g-recaptcha-response'])){ 
    $captcha=$_POST['g-recaptcha-response']; 
    echo 'RESPONSE RECEIVED'; 
} 

if(!$captcha){ 
    echo 'RESPONSE NOT RECEIVED'; 
    echo '<h2>Please check the the captcha form.</h2>'; 
    exit; 
} 

은 HTML 형식의 조각입니다!

답변

0

if(!$captcha){ 
    echo 'RESPONSE NOT RECEIVED'; 
    echo '<h2>Please check the the captcha form.</h2>'; 
    exit; 
} 

$의 보안 문자는 첫 번째 경우에 존재하지 않기 때문에이

if(!isset($_POST['g-recaptcha-response']))){ 
    echo 'RESPONSE NOT RECEIVED'; 
    echo '<h2>Please check the the captcha form.</h2>'; 
    exit; 
} 

+0

가 굉장하지 않을 경우해야합니다! 그게 그 문제에 효과가있는 것처럼 보이지만 지금은 또 다른 문제가 있습니다. 정의되지 않은 인덱스 : 셀, 정의되지 않은 인덱스 : 이름. 이걸 일으킬 수있는 어떤 생각? reCaptcha 코드를 추가하기 전에 작동했습니다. 감사! – cs1923

+0

이 경고 메시지는? 나머지 코드는 괜찮아 보인다. –

+0

4 번과 5 번 라인 ... 말 그대로 알 수 있습니다 -> PHP Notice : 정의되지 않은 인덱스 : /var/app/current/sendemail_1.php의 셀 5 행 -> PHP Notice : 정의되지 않은 인덱스 :/var/app의 이름 /current/sendemail_1.php on line 4 – cs1923