Отправляю сообщение из формы обратной связи на почту. Само письмо доходит, но без введенных данных.
Вот html:
<form id="feedback">
<input type="text" name="name" placeholder="Ваше имя" required="required">
<input type="text" name="email" placeholder="Укажите ваш E-Mail" required="required">
<textarea name="text" placeholder="Введите сообщение" required="required"></textarea>
<button name="feedback_submit">Отправить</button>
</form>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script>
var feedback_form = document.getElementById('feedback');
var feedback_submit = document.querySelector('button[name="feedback_submit"]');
$(document).ready(function () {
$("button[name='feedback_submit']").click(function (e) { // Устанавливаем событие отправки для формы с id=form
feedback_submit.innerHTML = 'Отправляю...';
e.preventDefault();
var form_data = $(this).serialize(); // Собираем все данные из формы
$.ajax({
type: "POST", // Метод отправки
url: "send.php", // Путь до php файла отправителя
data: form_data,
success: function () {
feedback_submit.innerHTML = 'Сообщение отправлено!';
}
});
});
});
</script>
вот send.php
<?php
$to = "ПОЧТА НА КОТОРУЮ ПРИХОДИТ СООБЩЕНИЕ";
$subject = 'Сообщение через форму обратной связи'; //Заголовок сообщения
$message = '
<html>
<head>
<title>'.$subject.'</title>
</head>
<body>
<p>Имя: '.$_POST['name'].'</p>
<p>Email: '.$_POST['email'].'</p>
<p>Сообщение: '.$_POST['text'].'</p>
</body>
</html>'; //Текст сообщения
$headers = 'From: Support Team <support@server.com>' . "\r\n" .
'Reply-To: support@server.com' . "\r\n" .
'MIME-Version: 1.0' . "\r\n" .
'Content-Type: text/html; charset=utf-8' . "\r\n" .
'Content-Transfer-Encoding: quoted-printable';
mail($to, $subject, $message, $headers); //Отправка письма с помощью функции mail
?>