My contact form relies on HTML5 for validation and a very simple anti-spam method. Still I occasionally get a blank email with nothing but Contact Form in the subject line. I have 2 questions: Is HTML5 sufficient for validation, and why am I getting blank emails from the form? I figure someone is playing with it but how? Here’s the code:
<form method="post" action="sendemail.php">
<fieldset>
<div>
<label>Name:</label>
<input name="name" id="name" type="text" required>
</div>
<div>
<label>Email:</label>
<input name="email" id="email" type="email" required>
</div>
<div>
<label>Message:</label>
<textarea name="message" id="message" placeholder="Type Here" required></textarea>
</div>
<div class="nospam">
<label>*What is 2+2? (Anti-spam)</label>
<input name="human" placeholder="Answer Here" required>
</div>
<div class="shortinput">
<input type="submit" id="submit" value="Send"><input type="reset" value="Clear">
</div>
</fieldset>
</form>
<?php
$name = $_POST['name'];
$email = $_POST['email'];
$content = $_POST['message'];
$message = wordwrap($content, 70, "\\r\
");
$formcontent="From: $name \
Message: $message";
$recipient = "me@work.com";
$subject = "Contact Form";
$mailheader = "From: $email \\r\
";
$success_message = "Your message has been sent, thank you.";
mail($recipient, $subject, $message, $mailheader);
echo $success_message;
?>