Моя текущая контактная форма работает до тех пор, пока вы вводите текст в поле сообщения без возврата каретки. Если вы нажмете «ввод», чтобы начать новую строку / абзац и попытаетесь отправить форму, она умирает.
Вот код HTML для самой формы:
<form id="contact-form" method="post" action="mail.php" role="form">
<div class="form-group">
<label for="name">Call me...</label>
<input type="text" class="form-control" placeholder="Name" id="name" name="name" style="width: 350px; padding: 7px;">
</div>
<div class="form-group">
<label for="email">You can find me @</label>
<input type="email" class="form-control" placeholder="Email" id="email" name="email" style="width: 350px; padding: 7px;" aria-describedby="emailHelp">
<span id="emailHelp" class="form-text text-muted" style="display: none;">Please enter a valid e-mail address.</span>
</div>
<div class="form-group">
<label for="message" style="vertical-align: top;">And here's what I'm thinking...</label>
<textarea rows="10" cols="100" class="form-control" placeholder="Keep it brief. Or not. You have my undivided attention." id="message" name="message" aria-describedby="messageHelp"></textarea>
<span id="messageHelp" class="form-text text-muted" style="display: none;">Please enter a message.</span>
</div>
<div class="text-center">
<button type="submit" style="width: 80px; padding: 7px;">Send</button>
</div>
</form>
А вот код PHP (нет, он не симпатичный, но относительно функциональный - я новичок в кодировании и никогда не использовал PHP, поэтому мой код представляет собой фрагмент копирования / вставки с настройками.)
<?php
if(isset( $_POST['name']))
$name = $_POST['name'];
if(isset( $_POST['email']))
$email = $_POST['email'];
$recipient = "hello@macaferguson.com";
$mailheader ="From: $email \r\n";
$subject = "Design inquiry from $name \n";
$subject = "Email: $email \r\n Message: $message \r\n";
mail($recipient, $mailheader, $subject, $message) or die("<h3><center>Well, that didn't go as planned. Please try again.</center></h3>");
header("Location: thank_you.html");
?>