Содержимого формы нет в письме

116
05 октября 2019, 07:30

Настроил скрипт отправки формы, письмо доходит, но без данных формы. Форма:

  <form style="display: inline;">
 <input class="form" type="number" name="user_phone" placeholder="+7 (ххх) ххх хх хх" required>
  <button type="submit" class="do-submit">Отправить</button>
 </form>

Обработчик:

require_once('phpmailer/PHPMailerAutoload.php');
$mail = new PHPMailer;
$mail->CharSet = 'utf-8';

$phone = $_POST['user_phone'];

//$mail->SMTPDebug = 3;                               // Enable verbose debug output
$mail->isSMTP();                                      // Set mailer to use SMTP
$mail->Host = 'smtp.mail.ru';                                                                                           // Specify main and backup SMTP servers
$mail->SMTPAuth = true;                               // Enable SMTP authentication
$mail->Username = 'vac9p@mail.ru'; // 
$mail->Password = ''; // письма
$mail->SMTPSecure = 'ssl';                            // Enable TLS encryption, `ssl` also accepted
$mail->Port = 465; // TCP port to connect to / этот порт может отличаться у других провайдеров
$mail->setFrom('vac9p@mail.ru'); // 
$mail->addAddress('dandelion.digital@mail.ru');     // Кому будет уходить письмо 
//$mail->addAddress('ellen@example.com');               // Name is optional
//$mail->addReplyTo('info@example.com', 'Information');
//$mail->addCC('cc@example.com');
//$mail->addBCC('bcc@example.com');
//$mail->addAttachment('/var/tmp/file.tar.gz');         // Add attachments
//$mail->addAttachment('/tmp/image.jpg', 'new.jpg');    // Optional name
$mail->isHTML(true);                                  // Set email format to HTML
$mail->Subject = 'Заявка с тестового сайта';
$mail->Body    = ''.$phone;
$mail->AltBody = '';
if(!$mail->send()) {
    echo 'Error';
} else {
}
?>

JQ:

$(document).ready(function () {
      $("form").submit(function (e) {
           sendForm(e);
           return false;
      });
 });
 function sendForm (e) {
      var formNm = $(e);
      $.ajax({
           type: "POST",
           url: 'mail.php',
           data: formNm.serialize(),
           success: function (data) {
                // Вывод текста результата отправки
                $(formNm).html(data);
           },
           error: function (jqXHR, text, error) {
                // Вывод текста ошибки отправки
                $(formNm).html(error);
           }
      });
 }
Answer 1
$(document).ready(function () {
  $("form").submit(function (e) {
    sendForm(this); // !!! передавайте элемент формы в функцию sendForm
    return false;
  });
});
function sendForm(form) {
  var formNm = $(form);
  $.ajax({
    type: "POST",
    url: 'mail.php',
    data: formNm.serialize(),
    success: function (data) {
      // Вывод текста результата отправки
      formNm.html(data);
    },
    error: function (jqXHR, text, error) {
      // Вывод текста ошибки отправки
      formNm.html(error);
    }
  });
}
READ ALSO
Laravel ошибка про имэйл

Laravel ошибка про имэйл

сама ошибка

90
Пример создания блокнота не работает

Пример создания блокнота не работает

Пытаюсь запустить пример создания блокнота из туториалов Qt (https://docqt

149
Подсчет одинаковых символов в строке

Подсчет одинаковых символов в строке

Вроде все работает, но по условию препода символы и верхнего регистра должны быть приняты как одинаковы, то есть "А"=="а"Как можно это реализовать?

110
_beginthreadex - дождаться завершения потока

_beginthreadex - дождаться завершения потока

Для выполнение определённой задачи пришлось прибегнуть к созданию дополнительного потокаНовый поток я создаю в оконном приложении

139