Пытался добавить на сайт форму обратной связи по образцу, но письма не отправляются. Не могу найти ошибку.
В консоли ошибки не выводятся.
<form class="mx-auto align-middle text-center form-white" method="post" >
<div class="form-group">
<input class="form-control" type="text" placeholder="Ваше имя" id="name"
pattern="[a-zA-Zа-яА-Я]+"
minlength="3"
maxlength="10"
required
>
</div>
<div class="form-group">
<input type="tel" class="form-control" id="tel" placeholder="Ваш телефон"
pattern="^\+?[\s\-\(\)0-9]{7,19}$"
required
>
</div>
<div class="form-group">
<input type="email" class="form-control" id="email" aria-describedby="emailHelp" placeholder="Ваш e-mail"
pattern="[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,4}$"
required
>
</div>
<button type="submit" class="btn btn-primary" id="btn_submit">ОСТАВИТЬ ЗАЯВКУ</button>
<div id="erconts"></div>
</form>
$(document).ready(function () {
$('#btn_submit').click(function(){
// собираем данные с формы
var user_name = $('#name').val();
var user_email = $('#email').val();
var user_phone = $('#phone').val();
// отправляем данные
$.ajax({
url: "send.php", // куда отправляем
type: "post", // метод передачи
data: { // что отправляем
"name": user_name,
"email": user_email,
"phone": user_phone,
},
error:function(){$("#erconts").html("Произошла ошибка!");},
// beforeSend: function() {
// $("#erconts").html("Отправляем данные...");
// },
success: function(result){
$('#erconts').html(result);
console.log("ntcn");
}
});
});
});
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
if (isset($_POST['name'])) {$name = $_POST['name'];}
if (isset($_POST['phone'])) {$phone = $_POST['phone'];}
if (isset($_POST['email'])) {$formData = $_POST['email'];}
/* Адрес, куда отправляем письма*/
$to = "test@test.ru";
$subject = "Письмо с обратной связи";
$headers .= "Content-type: text/html; charset=utf-8\r\n";
$headers = "From: test@yandex.ru";
$message .= "Имя пользователя: ".$name."\n";
$message .= "Почта: ".$email."\n";
$message .= "Телефон: ".$phone."\n";
$send = mail($to, $subject, $message, $headers);
/*ЕСЛИ ПИСЬМО ОТПРАВЛЕНО УСПЕШНО ВЫВОДИМ СООБЩЕНИЕ*/
if ($send == "true")
{
echo "Ваше сообщение отправлено. Мы ответим вам в ближайшее время.\r\n";
}
/*ЕСЛИ ПИСЬМО НЕ УДАЛОСЬ ОТПРАВИТЬ ВЫВОДИМ СООБЩЕНИЕ ОБ ОШИБКЕ*/
else
{
echo "Не удалось отправить, попробуйте снова!";
}
}
else {
http_response_code(403);
echo "Попробуйте еще раз";
}
?>
И какими методами сейчас лучше всего реализовывать отправку писем с сайта?
upd. С кодом все в порядке>, я не догадался заглянуть в папку спам.