Задать вопрос
@rinaz22

Почему не работает AJAX при отправке POST?

Всем привет! Есть AJAX код, который отправляет post данные с формы в php файл. Но почему-то этот код не работает. Если точнее, то нет ответа от php файла. Вот AJAX:
spoiler
$(document).ready(function(){
$('#btn_submit').click(function(){
// собираем данные с формы
var user_name = $('#user_name').val();
var user_phone = $('#user_phone').val();
//var text_comment = $('#text_comment').val();
// отправляем данные
$.ajax({
url: "/action.php", // куда отправляем
type: "post", // метод передачи
dataType: "json", // тип передачи данных
data: { // что отправляем
"user_name": user_name,
"user_phone": user_phone,
//"text_comment": text_comment
},
// после получения ответа сервера
success: function(data){
$('.messages').html(data.result); // выводим ответ сервера
}
});
});
});

Вот PHP:
spoiler

if(empty($errors)){		
		// собираем данные из формы
		$message  = "Имя пользователя: " . $_POST['user_name'] . "<br/>";
		$message .= "Телефон пользователя: " . $_POST['user_phone'] . "<br/>";
		//$message .= "Текст письма: " . $_POST['text_comment'];		
		send_mail($message); // отправим письмо
		// выведем сообщение об успехе
		$msg_box = "<span style='color:red;text-align:center;display:block;padding-top:10px;'>Сообщение успешно отправлено!</span>";
	}else{
		// если были ошибки, то выводим их
		$msg_box = "";
		foreach($errors as $one_error){
			$msg_box .= "<span style='color: red;'>$one_error</span><br/>";
		}
	}

  • Вопрос задан
  • 117 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 2
webinar
@webinar Куратор тега PHP
Учим yii: https://youtu.be/-WRMlGHLgRg
что бы был ответ, вероятно его надо отправить, хотя бы:
echo $msg_box;
Ваш код ничего не выводит, ничего не возвращает, вообще ничего не делает. Отправляет почту и создает в пустоту переменные.
Ответ написан
ThunderCat
@ThunderCat Куратор тега PHP
{PHP, MySql, HTML, JS, CSS} developer
Есть подозрение что у вас форма (которую в коде вы не вставили) просто отправляет данные, перезагружая страницу, так как отсутствует preventDefault() по клику на кнопку субмит.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
от 200 000 до 290 000 ₽