Всем привет. Уже не первый раз делаю формы, но сейчас не понимаю в чем ошибка. Проверяю форму на локальном сервере. Аякс выполняется с ошибкой (undefined), но данные все равно отправляются. Прошу помощи, может кто свежим взглядом посмотрит и увидит ошибку в коде.
<form name="feedback" id="feedback" class="feedback" action="" method="post">
<input type="hidden" id="catch" name="catch">
<div class="input-block">
<input class="input" id="companyname" type="text" name="name" placeholder="Company name" required>
</div>
<div class="input-block">
<input class="input" id="companytel" type="tel" name="tel" placeholder="Company telephone" required>
</div>
<div class="input-block">
<input class="input" id="companyemail" type="email" name="email" placeholder="Company e-mail" required>
</div>
<div class="input-block">
<textarea class="comment" id="comment" name="comment" placeholder="Your comments"></textarea>
</div>
<div class="submit-block">
<input class="submit" id="submit" type="submit" value="Send a request">
</div>
</form>
$(".feedback .submit").click(function(e) { //Change
$.ajax({
type: "POST",
url: "sender.php",
dataType: "json",
data: $('.feedback').serialize()
}).done(function (result) {
$('.feedback .input-block input, .feedback textarea').val('');
console.log('sss');
}).fail(function (xhr, str) {
$('.feedback .input-block input, .feedback textarea').val('');
alert('Error: ' + xhr.responseCode + ' Please, try again later.');
});
e.preventDefault();
});
if(isset($_POST["name"]))
{
$name = $_POST["name"];
}
if(isset($_POST["tel"]))
{
$phone= $_POST["tel"];
}
if(isset($_POST["email"]))
{
$email = $_POST["email"];
}
if(isset($_POST["comment"]))
{
$comment = $_POST["comment"];
}
if($name=="" or $email=="" or $phone==""){
echo "Заполните все поля";
}
else{
$to = "your_mail@mail.ru"; /* Адрес, куда отправляем письма*/
$subject = "Письмо с обратной связи"; /*Тема письма*/
$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=utf-8\r\n";
$headers .= "From: <test@mail.ru>\r\n";/*ОТ КОГО*/
$message = '<h3>Содержание сообщения</h3>';
$message .= '<strong>Company name:</strong> ' . $name . '.<br />';
$message .= '<strong>Company telephone:</strong> ' . $email . '.<br />';
$message .= '<strong>Company e-mail:</strong> ' . $phone . '.<br />';
$message .= '<strong>Your comments:</strong> ' . $comment . '.<br />';
$send = mail($to, $subject, $message, $headers);
if ($send == "true")
{
echo "Ваше сообщение отправлено. Мы ответим вам в ближайшее время.\r\n";
}
else
{
echo "Не удалось отправить, попробуйте снова!";
}
}