Я не понимаю, почему у меня не передается значение value при отправке формы. Хочу отправлять данные из ползунков jquery-ui в виде письма на почту, но на почте в строках input пусто. Если вытягивать значение через $('.selector').val(); то он его отображает корректно, но при самой отправке формы значение почему то не передается.
Ajax отправки формы:
$(".form").submit(function (e) {
e.preventDefault();
var form_data = $(this).serialize();
$.ajax({
type: "POST",
url: "mail.php",
cache: false,
data: form_data,
success: function () {
alert('ok');
}
});
});
php обработчик письма:
<?php
$slides = ($_POST['slides']);
$screens = ($_POST['screens']);
$select = ($_POST['select']);
$select2 = ($_POST['select2']);
$select3 = ($_POST['select3']);
$select4 = ($_POST['select4']);
$select5 = ($_POST['select5']);
$name = trim($_POST['name']);
$phone = ($_POST['phone']);
$total = ($_POST['total']);
if ($select == 10000) {
$select = 'Landing Page';
} else if ($select == 20000) {
$select = 'Интернет-магазин';
} else if ($select == 35000) {
$select = 'Корпоративный сайт';
}
if ($select2 == 2500) {
$select2 = 'Популярные CMS';
} else if ($select2 == 5000) {
$select2 = 'Редкие CMS';
} else if ($select2 == 15000) {
$select2 = 'Самописная CMS';
}
if (isset($select3) == true) {
$select3 = 'Да';
} else {
$select3 = 'Нет';
}
if (isset($select4) == true) {
$select4 = 'Да';
} else {
$select4 = 'Нет';
}
if (isset($select5) == true) {
$select5 = 'Да';
} else {
$select5 = 'Нет';
}
$fromName = 'deruino working';
$fromMail = 'блабла';
$emailTo = 'блабла';
$subject = 'Заявка на расчет';
$subject = '=?utf-8?b?'. base64_encode($subject) .'?=';
$headers = "Content-type: text/plain; charset=\"utf-8\"\r\n";
$headers .= "From: ". $fromName ." <". $fromMail ."> \r\n";
$body = "Имя: $name\nТелефон: $phone\nСколько будет страниц: $slides\nСколько будет экранов: $screens\nТип сайта: $select\nНачинка сайта: $select2\nДополнительные опции:\nАдаптация: $select3\nМодули: $select4\nДругое: $select5\nИтоговая стоимость: $total";
if (strlen($phone) > 0) {
$mail = mail($emailTo, $subject, $body, $headers, '-f'. $fromMail);
}
?>
кусок кода формы с нужным импутом:
<div class="col-12 col-sm-12 col-md-6 col-lg-6 col-xl-6 mobile">
<div class="slides">
<div class="text slides_title">
Сколько будет экранов
</div>
<div class="slides_ui">
<div class="size slides_min">0</div>
<div id="polzunok-1"></div>
<div class="size slides_max">50</div>
</div>
<div class="slides_count">
<div class="countblock">
Кол-во экранов: <input type="text" name="slides" id="amount1" value="0" disabled>
</div>
</div>
</div>
</div>