Jump to content

Recommended Posts

Необходимо сделать ревизию и внести изменения в HTML код формы и (или) в файл-обработчик .php для нормализации работоспособности.

Сейчас заявка формируется и приходит на почту, но при отправки формы блокируется вывод поп-ап уведомления об успешной отправки заявки и страница сайта ругается на ошибку

 

99999.thumb.jpg.0328eb8ae70fd41918b359cf41085049.jpg

 

 

HTML код формы:

<form action="" class="form-horizontal" id="get-price" method="post">
<fieldset><!-- Form Name --><legend style="text-align: center;">Заявка на получение прайс-листа</legend> <!-- Text input-->

<div class="form-group"><label class="col-md-4 control-label" for="name-opt">Ваше Имя</label>

<div class="col-md-4"><input class="form-control input-md" id="name-opt" name="name-opt" placeholder="" required="" type="text" /></div>
</div>
<!-- Text input-->

<div class="form-group"><label class="col-md-4 control-label" for="email-opt">Ваш e-mail</label>

<div class="col-md-4"><input class="form-control input-md" id="email-opt" name="email-opt" placeholder="" required="" type="text" /></div>
</div>
<!-- Text input-->

<div class="form-group"><label class="col-md-4 control-label" for="phone-opt">Телефон</label>

<div class="col-md-4"><input class="form-control input-md" id="phone-opt" name="phone-opt" placeholder="" type="text" /></div>
</div>
<!-- Text input-->

<div class="form-group"><label class="col-md-4 control-label" for="city-opt">Город</label>

<div class="col-md-4"><input class="form-control input-md" id="city-opt" name="city-opt" placeholder="" type="text" /></div>
</div>
<!-- Multiple Checkboxes -->

<div class="form-group"><label class="col-md-4 control-label" for="checkboxes">Каналы сбыта</label>

<div class="col-md-4">
<div class="checkbox"><label for="checkboxes-1"><input id="checkboxes-1" name="checkboxes-1" type="checkbox" value="Магазин " /> Магазин </label></div>

<div class="checkbox"><label for="checkboxes-2"><input id="checkboxes-2" name="checkboxes-2" type="checkbox" value="Интернет " /> Интернет </label></div>

<div class="checkbox"><label for="checkboxes-3"><input id="checkboxes-3" name="checkboxes-3" type="checkbox" value="Другое " /> Другое </label></div>
</div>
</div>
<!-- Multiple Checkboxes -->

<div class="row">
<div class="col-sm-6 col-sm-offset-3">
<div class="checkbox"><label for="approval"><input .="" c="" id="approval" name="approval" placeholder="" required="" type="checkbox" value="Я даю свое согласие на обработку персональных данных в соответствии c Политикой Безопасности интернет-магазина. " /> Я даю свое согласие на обработку персональных данных в соответствии c <u><strong><a href="https://chzda.ru/politika-bezopasnosti.html">Политикой Безопасности</a></strong></u> интернет-магазина. </label></div>
</div>
</div>
<br />
<br />
<!-- Button -->
<div class="form-group">
<div class="col-md-12" style="text-align: center;"><button class="btn btn-info" id="singlebutton" name="singlebutton">Отправить заявку</button></div>
</div>
</fieldset>
</form>
</div>
<script type="text/javascript">
function show(state){
document.getElementById('success-window').style.display = state; 
document.getElementById('success-wrap').style.display = state;  
} 
</script>
<style type="text/css">#success-wrap{
display: none;
opacity: 0.8;
position: fixed;
left: 0;
right: 0;
top: 0;
bottom: 0;
padding: 16px;
background-color: rgba(1, 1, 1, 0.725);
z-index: 9999;
overflow: auto;
}
#success-window{
width: 450px;
height:170px;
margin: 30% auto;
display: none;
background: #fff;
z-index: 9999;
position: fixed;
left: 0;
right: 0;
top: 0;
bottom: 0;
-moz-border-radius:5px;
-o-border-radius:5px;
-khtml-border-radius:5px;
-webkit-border-radius:5px;
border-radius:5px;
}
#success-wrapper {
padding: 20px;
text-align:center;
}
</style>
<div id="success-wrap" onclick="show('none')">&nbsp;</div>

<div id="success-window">
<div id="success-wrapper">
<h1>Ваш запрос был отправлен и будет обработан в ближайшее время</h1>
<button class="btn btn-info" id="success-button" name="successbutton" onclick="show('none')">Закрыть</button></div>
</div>
<script>
$(document).ready(function() {
$("#get-price").submit(function(){
var form = $(this);
var error = false;
var data = form.serialize();
$.ajax({
  type: 'POST',
  url: '/get-price.php', 
  dataType: 'json',
  data: data,
      beforeSend: function(data) {
           form.find('input[type="submit"]').attr('disabled', 'disabled');
         },
      success: function(data){    
       show('block');
        },
      error: function (xhr, ajaxOptions, thrownError) {
           alert(xhr.status);
           alert(thrownError);
        },
      complete: function(data) {
           form.find('input[type="submit"]').prop('disabled', false);
        }                
});
return false;
});
});
</script>

 

PHP  обработчик (get-price.php) для формирования и отправки запроса на мою почту:

 

<?php
// Get price form
if((isset($_POST['name-opt'])&&$_POST['name-opt']!="")&&(isset($_POST['email-opt'])&&$_POST['email-opt']!="")){
        $to = 'пока временно убрал отсюда мою почту';
        $subject = 'Запрос оптового прайс-листа';
        $message = '
                <html>
                    <head>
                        <title>'.$subject.'</title>
                    </head>
                    <body>
                        <p>Имя: '.$_POST['name-opt'].'</p>
<p>e-mail: '.$_POST['email-opt'].'</p>
                        <p>Телефон: '.$_POST['phone-opt'].'</p>
<p>Город: '.$_POST['city-opt'].'</p>
<p>Канал(ы) сбыта: '.$_POST['checkboxes-1'].$_POST['checkboxes-2'].$_POST['checkboxes-3'].'</p>
<p> Примечание: '.$_POST['approval'].'</p>                  
                    </body>
                </html>'; 
        $headers  = "Content-type: text/html; charset=utf-8 \r\n";
        $headers .= "From: Запрос оптового прайса ЧЗДА <пока временно убрал отсюда мою почту>\r\n";
        mail($to, $subject, $message, $headers);
}
?>

 

 

Edited by globaltrading

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
You are posting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.