@olyabolya

Заявка с формы приходит дважды. как исправить?

Добрый день!
Проблема такая: при отправке формы на сайте дважды высвечивается сообщение, что заявка принята и на почту также приходят 2 письма. Если обязательное поле не заполнено, то опять же двойное сообщение

<div id="zayavka">
<div class="form" id="textform">
    <p class="heading">Оставьте заявку на бесплатную консультацию</p>
    <p>Оставьте свои контактные данные и мы свяжемся с вами в ближайшее время</p>
    <form class="row user_request" id="form" name="contact" action="" method="POST" novalidate enctype="multipart/form-data">                
    <div class="inputwrap">
    <input type="hidden" name="page" value="Регистрация ИП - заявка" />
        <label for="name">Ваше имя<sup>*</sup></label>
        <input type="text" id="name" required name="name" class="text-input" />
    </div>

    <div class="inputwrap">
        <label for="phone">Контактный телефон<sup>*</sup></label>
        <input id="phone" type="text" name="phone" class="text-input phonemasked" placeholder="+7 (800) 000-00-00" required />
    </div>
    
    <div class="inputwrap">
        <label for="mail">Электронная почта<sup>*</sup></label>
        <input id="mail" type="email" name="mail" class="text-input" required />
    </div>

    <div class="inputwrap">
        <label for="city">Город</label>
        <input id="city" type="text" name="city" class="text-input" />
    </div>

<table style="margin-left: 10px;">
    <div class="inputwrap radio-nalog" style="width: 22%;">
        <label for="nalog">Система налогообложения</label>
        <tr>
            <td><input type="radio" name="nalog" value="osno"/>
            <label for="osno"> Общая</label></td>
            <td><input type="radio" name="nalog" value="usn 6"/>
            <label for="usn 6"> УСН 6%</label></td>
            <td><input type="radio" name="nalog" value="usn 15">
            <label for="usn 15"> УСН 15%</label></td>
            <td><input type="radio" name="nalog" value="no">
            <label for="no"> Не определились</label></td>
        </tr>
    </div>
</table>

    <div class="inputwrap">
        <label for="okved">Вид деятельности предпринимателя</label>
        <textarea name="okved" style="height: 50px;" placeholder="Например, турагентство" required></textarea>
    </div>

    <span class="result_message"></span>

    <div class="inputwrap checkwrap">
        <input type="checkbox" name="check_agreement" id="check_agreement" required>
        <label for="check_agreement">
            С <a target="_blank" href="/согласие-на-обработку.htm">условиями</a> обработки персональных данных ознакомлен
            </label>
    </div>
    
        <div class="inputwrap" style="float: right;">
        <input type="submit" name="submit" class="button" id="submit" value="Отправить">
    </div>

</form>
</div>
</div>


<?php
$recepient = "@mail.ru";

var_dump($_POST['page']);
$name = trim($_POST["name"]);
$phone = trim($_POST["phone"]);
$mail = trim($_POST["mail"]);
$city = trim($_POST["city"]);  
$nalog = trim($_POST["nalog"]);
$okved = trim($_POST["okved"]);
$participants = trim($_POST["participants"]);

$message = "Имя: $name \nТелефон: $phone \nЭл. почта: $mail \nГород: $city \nСистема налогообложения: $nalog \nВиды деятельности: $okved \nКол-во учредителей: $participants";

$pagetitle = "Новая заявка со страницы " . $_POST['page'];
mail($recepient, $pagetitle, $message, "Content-type: text/plain; charset=\"utf-8\"\n From: $recepient");


$(document).ready(function() {

// Добавляем маску для поля с номера телефона
$('.phonemasked').each(function(){
$(this).mask('+7 (999) 999-99-99');

  $(".user_request").submit(function() {
    if ( !this.checkValidity() )
      alert('Пожалуйста, заполните обязательные поля.');
    else  {
      $.ajax( {
        type: "POST",
        url: "/form/mail.php",
        data: $( this ).serialize()
      } ).done( function() {
        alert( "Заявка принята! В ближайшее время наш юрист с Вами свяжется." );
        // очищаем поля
    $('#name').val('');
    $('#phone').val('');
    $('#mail').val('');
    $('#city').val('');
    $('#nalog').val('');
    $('#okved').val('');
    $('#participants').val('');
      } );
    }
    return false;
    });
  });
});
  • Вопрос задан
  • 167 просмотров
Пригласить эксперта
Ответы на вопрос 1
@AndreyMyagkov
А зачем маска телефона и обработка формы у Вас в цикле? В этом и проблема

$('.phonemasked').mask('+7 (999) 999-99-99');

$(".user_request").submit(function() {
......
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы