Я создаю контактную форму, где, когда пользователь нажимает кнопку отправки, он отправляет электронное письмо компании с помощью вызова ajax. Однако он не передает переменную массива из формы в файл ajax PHP. Кажется, что он работает при успешном протоколировании переменной массива на консоль. Но данные отсутствуют в письме. Вот пример моего кода:jQuery Ajax Не отправляющий массив как объект данных
$("form").submit(function(e) {
e.preventDefault();
if ($('#email').val() == $('#cemail').val()) {
var arr = [];
arr["fname"] = $('#fname').val();
arr["lname"] = $('#lname').val();
arr["email"] = $('#email').val();
arr["subject"] = $('#subject').val();
arr["newsletter"] = $('#newsletter').val();
arr["message"] = $('#message').val();
$.ajax({
url: "contact-ajax.php",
method: "POST",
data: {d: arr},
success: function (d) {
$('button#submit').css('background', '#A2D852');
$('button#submit').html('Message Sent Successfully!');
$('form').get(0).reset();
//alert(d);
console.log(arr);
setTimeout(function(){
$('button#submit').css('background', '#FF8A00');
$('button#submit').html('Send Message <img src="contact/images/loading-icon.gif" id="loading-icon">');
$('#loading-icon').hide();
},3000);
},
error: function(jqXHR, textStatus) {
$('button#submit').css('background', '#F75D53');
$('button#submit').html('Failed to send. Please try again!');
setTimeout(function(){
$('button#submit').css('background', '#FF8A00');
$('button#submit').html('Send Message <img src="contact/images/loading-icon.gif" id="loading-icon">');
$('#loading-icon').hide();
},4000);
}
});
}
else {
alert("Your confirmation email does not match your email.");
return false;
}
});
var_dump($d)
возвращает нулевое значение в консоли, но console.log(arr)
возвращает действительный массив. Любая помощь будет оценена по достоинству.
Попробуйте это: 'данные: JSON.stringify ({d: обр})' –
@ leo.fcx Still возвращает нуль. –
Используйте вкладку «Сеть» инструментов разработчика вашего браузера, чтобы проверить отправленный запрос. Вы должны уметь видеть полезную нагрузку запроса, которая была (или не была) отправлена на ваш сервер. – gilly3