I've read through many posts on here, and followed all the advice, but I'm unable to get this form to submit with Google Recaptcha v2. After pressing submit the form just refreshes.
The html form and the php are on the same page. I'm basically just taking a form that was already present and adding in the Google Recaptcha.
Any help would be much appreciated!
PHP:
<?php
if(isset($_POST['submit']) && !empty($_POST['submit'])){
if(isset($_POST['g-recaptcha-response']) && !empty($_POST['g-recaptcha-response'])){
//your site secret key
$secret = 'SECRET KEY';
$gRecaptcha = $_POST['g-recaptcha-response'];
$gRecaptcha = "https://www.google.com/recaptcha/api/siteverify?secret=".$secret."&response=".$_POST['g-recaptcha-response'];
$response = file_get_contents($gRecaptcha);
$responseData = json_decode($response);
if($responseData->success){
switch ($_POST['location']) {
case 'Inverness':
$Send = "email address";
break;
case 'Southlake':
$Send = "email address";
break;
}
$Subject = "A Message From your Website!";
$name = $_POST['name'];
$email = $_POST['email'];
$phone = $_POST['phone'];
$location = $_POST['location'];
$message = $_POST['message'];
$mailbody="Name: $name
Email: $email
Phone: $phone
Location: $location
Message: $message
";
mail($Send, $Subject, $mailbody);
$succMsg = 'Your contact request have submitted successfully.';
exit($succMsg);
} else {
// if not show the error
$errMsg = 'Robot verification failed, please try again.';
echo $errMsg;
}
}else{
// if recaptcha is not checked
$errMsg = 'Please click on the reCAPTCHA box.';
}
}
?>
HTML:
<div id="contact-form" style="float:left;">
<form action="<?php echo htmlentities($_SERVER['PHP_SELF']); ?>" method="post" enctype="text/plain">
<table width="325" cellpadding="0" cellspacing="6">
<tr>
<td><label for="name">Name:</label></td>
<td><input type="text" name="name" value=""/></td>
</tr>
<tr>
<td><label for="email">Email:</label></td>
<td><input type="text" name="email" id="email" value="" /></td>
</tr>
<tr>
<td><label for="phone">Phone:</label></td>
<td><input type="text" name="phone" id="phone" value="" /></td>
</tr>
<tr>
<td><label for="loc">Location:</label></td>
<td><select name="location"><option value="Inverness">Inverness</option><option value="Southlake">Southlake</option></select></td>
</tr>
<tr>
<td><label for="msg">Questions/Comments:</label></td>
<td><textarea name="message" id="msg" value="" cols="20" rows="5" /></textarea></td>
</tr>
<tr>
<td>For spam prevention purposes, please answer the question below</td>
</tr>
<tr>
<td><div style="width:200px" class="g-recaptcha" data-sitekey="SITE KEY"></div></td>
</tr>
<tr>
<td colspan="2" align="left"><input type="submit" name='submit' value="Send" style="color:white;background-color:#bc2729;width:95px;height:29px;border:none" src="images/btn_submit.jpg"></td>
</tr>
</table>
</form>
</div>