recaptcha 값은 $ _post에 나타나지 않습니다
문제
나는 내 사이트에서 recaptcha를 사용하려고 노력하고 있으며, recaptcha_challenge_field, 그리고 recaptcha_response_field는 백엔드의 $ _post 배열에 추가되지 않지만 내 양식의 나머지 변수는 있습니다.
어떤 아이디어? 공개/개인 키를 두 번 확인했습니다.
생성 된 HTML은 다음과 같습니다.
<form action='myform.php' name='myform' id='myform' method='post' enctype='multipart/form-data'>
<tr class='select'>
<td class='label'>Name:</td>
<td>
<input type='text' name='name' id='name' class='inputtext' maxlength='25' size='25' >
</td>
</tr>
<tr class='select'>
<td class='label'>Email:</td>
<td>
<input type='text' name='email' id='email' class='inputtext' maxlength='25' size='25' >
</td>
</tr>
<tr class='select'>
<td class='label'>Message:</td>
<td>
<textarea class='inputtext' name='message' rows='10' cols='45'></textarea>
</td>
</tr>
<tr class='select'>
<td class='label'>Are you human?</td>
<td>
<script type="text/javascript" src="http://api.recaptcha.net/challenge?k=MY_KEY"></script>
<noscript>
<iframe src="http://api.recaptcha.net/noscript?k=MY_KEY" height="300" width="500" frameborder="0"></iframe><br/>
<textarea name="recaptcha_challenge_field" rows="3" cols="40"></textarea>
<input type="hidden" name="recaptcha_response_field" value="manual_challenge"/>
</noscript>
</td>
</tr>
<tr>
<td>
</td>
<td style='text-align: left;' colspan='2'>
<input type='submit' class='button' value='Send message'>
</td>
</tr>
</form>
지금까지 내 핸들러가 있습니다.
print_r($_POST);
require_once('inc/recaptchalib.php');
$privatekey = "MY_PRIVATE_KEY";
$resp = recaptcha_check_answer ($privatekey,
$_SERVER["REMOTE_ADDR"],
$_POST["recaptcha_challenge_field"],
$_POST["recaptcha_response_field"]);
print_r($resp);
if (!$resp->is_valid) {
die ("The reCAPTCHA wasn't entered correctly. Go back and try it again." .
"(reCAPTCHA said: " . $resp->error . ")");
}
모든 도움이 정말 감사하겠습니다. 고맙습니다,
해결책
상상할 수있을 것입니다. 당신은 당신이 인터리빙하는 방식으로 인해 DOM 문제가있을 수 있습니다. <table>
그리고 <form>
. 당신의 움직임을 시도하십시오 <form>
그리고 </form>
외부의 태그 <table>
그리고 </table>
각기.
제휴하지 않습니다 StackOverflow