I have a form which i have create in HTML, but works with PHP and AJAX/Javascript. The form submits and works as it should, I receive an email, but it is blank. I am not sure why it isn’t working properly. If anyone could assit I would be greatful. I would also like to fit in a failer clause and perhaps some sort of Captcha, if I could guidence on that too please.
PHP;
```
<?php
$status = array(
'message'=>'Email sent!'
);
if($_SERVER["REQUEST_METHOD"] == "POST"){
$email_to = 'My@website';
$name = ($_POST['name']);
$email = ($_POST['email']);
$subject = ($_POST['subject']);
$message = ($_POST['message']);
$headers = 'From: My Website';
$body = 'Name: ' . $name . "\n\n" . 'Email: ' . $email . "\n\n" . 'Subject: ' . $subject . "\n\n" . 'Message: ' . $message;
if (mail($email_to, $subject, $body, $headers))
{
echo json_encode($status);
}
}
```
JS;
var form = $('.contact-form');
form.submit(function () {
this = $(this);
$.post($(this).attr('action'), function(data) {
$this.prev().text(data.message).fadeIn().delay(3000).fadeOut();
},'json');
return false;
});
```
HTML
```
<form id="main-contact-form" class="contact-form" name="contact-form" method="post" action="PHP/sendemail.php" role="form">
<div class="row">
<div class="col-sm-6">
<div class="form-group">
<input type="text" id="name" name="name" class="form-control" required="required" placeholder="Name">
</div>
</div>
<div class="col-sm-6">
<div class="form-group">
<input type="text" name="email" id="email" class="form-control" required="required" placeholder="Email address">
</div>
</div>
<div class="col-sm-6 col-lg-12 col-md-12">
<div class="form-group">
<input type="text" name="subject" id="subject" class="form-control" required="required" placeholder="Subject">
</div>
</div>
</div>
<div class="row">
<div class="col-sm-12">
<div class="form-group">
<textarea name="message" id="message" required="required" class="form-control" rows="8" placeholder="Message"></textarea>
</div>
<div class="form-group">
<button type="submit" class="btn btn-danger btn-lg">Send Message</button>
</div>
</div>
</div>
</form>
</div><!--/.col-sm-6-->
```