Форма отправки заявки через php mailer

введите сюда описание изображения

При первом нажатии на любую кнопку формы на сайте вылазит сразу и окно формы и благодарность за отправку, после закрытия этих окно, и повторного нажатия уже все нормально работает и появляется 1 форма и после отправки уже благодарность.

JS -

  window.addEventListener('DOMContentLoaded', () => {
  const menu = document.querySelector('.menu'),
  menuItem = document.querySelectorAll('.menu_item'),
  hamburger = document.querySelector('.hamburger');

  hamburger.addEventListener('click', () => {
  hamburger.classList.toggle('hamburger_active');
  menu.classList.toggle('menu_active');
  });

  menuItem.forEach(item => {
  item.addEventListener('click', () => {
  hamburger.classList.toggle('hamburger_active');
  menu.classList.toggle('menu_active');
  })
  })
  })

  $('[data-modal=consultation]').on('click', function() {
  $('.overlay, #consultation').fadeIn('slow');
  });
  $('.modal__close').on('click', function() {
  $('.overlay, #consultation, #thanks').fadeOut('slow');
  });

  function valideForms(form){
  $(form).validate({
  rules: {
  name: {
  required: true,
  minlength: 2
  },
  phone: "required",
  email: {
  required: false,
  email: true
  }
  },
  messages: {
  name: {
  required: "Пожалуйста, введите свое имя",
  minlength: jQuery.validator.format("Введите {0} символов!")
  },
  phone: "Пожалуйста, введите свой номер телефона",
  email: {
  required: "Пожалуйста, введите свою почту",
  email: "Неправильно введен адрес почты"
  }
  }
  });
  };

  valideForms('#consultation-form');
  valideForms('#consultation form');

  $('input[name=phone]').mask("+7(999) 999-99-99");

  $('form').submit(function(e) {
  e.preventDefault();
  $.ajax({
  type: "POST",
  url: "mailer/smart.php",
  data: $(this).serialize()
  }).done(function() {
  $(this).find("input").val("");
  $('#consultation').fadeOut();
  $('.overlay, #thanks').fadeIn('slow');

  $('form').trigger('reset');
  });
  return false;
  });

  PHP mailer

  <?php

  $name = $_POST['name'];
  $phone = $_POST['phone'];
  $email = $_POST['email'];

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

  // $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 = '[email protected]'; // Наш логин
  $mail->Password = 'пароль'; // Наш пароль от ящика
  $mail->SMTPSecure = 'ssl'; // Enable TLS encryption, `ssl` also accepted
  $mail->Port = 465; // TCP port to connect to

  $mail->setFrom('[email protected]', 'TaxiRoom'); // От кого письмо
  $mail->addAddress('[email protected]'); // Add a recipient
  //$mail->addAddress('[email protected]'); // Name is optional
  //$mail->addReplyTo('[email protected]', 'Information');
  //$mail->addCC('[email protected]');
  //$mail->addBCC('[email protected]');
  //$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 = '
  Пользователь оставил данные <br>
  Имя: ' . $name . ' <br>
  Номер телефона: ' . $phone . '<br>
  E-mail: ' . $email . '';

  if(!$mail->send()) {
  return false;
  } else {
  return true;
  }

  ?>

Ответы (0 шт):