@levano4ka

Kак сделать отправку ajax?

Добрый день! Уважаемые участники сообщества, помогите решить проблему. В модальное окно ввожу информацию, но она не уходит на емейл. Просто белый экран и в адресной строке /mail.php?name=magic-cleaner&phone=9514543367

раньше хотя бы на емейл отправлялось, а сейчас даже так. Все сломала(

<form id="callback" class="modal-body" role="form">
              <label class="note" align="center">Ваше имя</label>
            <div class="form-group">
              <input class="form-control-modal input-lg" type="text" placeholder="" required name="name"/>
            </div>
             <label class="note" align="center" placeholder="телефон:">Ваш телефон</label>
              
            <div class="form-group">
              <input class="form-control-modal input-lg" type="text" placeholder="" required name="phone"/>
            </div>
          
          <div class="modal-footer">
            <button type="submit" class="btn">Отправить</button>
               <a type="button" class="btn btn-default" data-dismiss="modal">Закрыть</a>
              </form>


//Аякс отправка форм
	//Документация: http://api.jquery.com/jquery.ajax/
	$("#callback").submit(function() {
		$.ajax({
			type: "GET",
			url: "mail.php",
			data: $("#callback").serialize()
		}).done(function() {
			alert("Спасибо за заявку!");
			setTimeout(function() {
				$.fancybox.close();
			}, 1000);
		});
		return false;
	});


<?php

$recepient = "****@gmailcom";
$sitename = "Название сайта";

$name = trim($_POST["name"]);
$phone = trim($_POST["phone"]);
$message = "Имя: $name \nТелефон: $phone";

$pagetitle = "Новая заявка с сайта \"$sitename\"";
mail($recepient, $pagetitle, $message, "Content-type: text/plain; charset=\"utf-8\"\n From: $recepient");


а теперь приходят на почту пустые инптуы

Имя:
Телефон:

и все, инфа не сохраняется

Он отправляет когда в форме дописываю action="mail.php" если этого не дописать, то модальное окно закрывается и все содержимое записывается в адресную строку. Может быть скрипт как-то не видит раз так происходит?
  • Вопрос задан
  • 509 просмотров
Пригласить эксперта
Ответы на вопрос 4
@melnikov_m
Передаете методом GET а принимаете POST
Ответ написан
mlnkv
@mlnkv
JavaScript Developer
$("#callback").submit(function(e) {
  e.preventDefault();
  $.post("mail.php", $("#callback").serialize(), function(resp) {
    alert("Спасибо за заявку!");
    setTimeout(function() {
      $.fancybox.close();
    }, 1000);
  })
});
Ответ написан
@levano4ka Автор вопроса
помогите решить вопрос)
Ответ написан
Комментировать
@iDenn
Web developer
Поменять в скрипте:
type: "GET" => type: "POST"
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы