За последние 24 часа нас посетили 22784 программиста и 1219 роботов. Сейчас ищут 643 программиста ...

Как сделать чтобы вместе с формой отправки ajax в письме было видно парам товара в блоке "ваш выбор"

Тема в разделе "JavaScript и AJAX", создана пользователем kasper051, 29 май 2019.

Метки:
  1. kasper051

    kasper051 Новичок

    С нами с:
    29 май 2019
    Сообщения:
    2
    Симпатии:
    0
    Здравствуйте, как сделать, чтобы видно было что он выбрал на сайте в письме который заказал человек.
    Пример письма с почты: Телефон: Имя: Почта: Тип: Размер: и тд
    код в index.html
    Код (Text):
    1. <a data-fancybox data-src="#hidden-content" href="javascript:;">Заказать</a>
    2.                    
    3.                     <div style="display: none;" id="hidden-content">
    4.        
    5.                             <h4>Ваш выбор</h4>
    6.                             <p>Тип:</p>
    7.                             <p>{{ myOption.myType }}</p>
    8.                             <p>Размер отверстия, a:</p>
    9.                             <p>{{ myOption.mySize }}</p>
    10.                             <p>Размер шага 1, t:</p>
    11.                             <p>{{ myOption.myStep }}</p>
    12.                             <p>Размер шага 2, t:</p>
    13.                             <p>{{ myOption.myStep2 }}</p>
    14.                             <p>Открытая поверхность:</p>
    15.                             <p>{{ myOption.mySpace }}</p>
    16.                             <p>Максимальная ширина:</p>
    17.                             <p>{{ myOption.myMaxSize }}</p>
    18.              
    19.       <div id="myform">
    20.       <div class="myform">
    21.       <form class="myform_form" id="myform_post">
    22.       <input type="text"  id="name1" name="name1" placeholder="Введите ваше имя">
    23.       <input type="text"  id="phone2" name="phone2" placeholder="Введите ваш номер телефона">
    24.       <input type="submit" name="submit" class="m-btn" value="Заказать">
    25.       </form>
    26.     </div>
    27.   </div>
    28. </div>
    код в js
    Код (Text):
    1. jQuery(document).ready(function () {
    2.   jQuery("#modal_post").submit(function () {
    3.     var postForm = jQuery('#modal_post');
    4.     jQuery.ajax({
    5.       type: "POST",
    6.       url: "/wp-content/themes/danex_ltd/post.php",
    7.          data: postForm.serialize(),
    8.       success: function (data) {
    9.         jQuery(postForm).html(data);
    10.       },
    11.       error: function (jqXHR, text, error) {
    12.         jQuery(postForm).html(error);
    13.       }
    14.     });
    15.     return false;
    16.   });
    17. });
    18. jQuery(document).ready(function () {
    19.   jQuery("#myform_post").submit(function () {
    20.     var postForm = jQuery('#myform_post');
    21.     jQuery.ajax({
    22.       type: "POST",
    23.       url: "/wp-content/themes/danex_ltd/post2.php",
    24.          data: postForm.serialize(),
    25.       success: function (data) {
    26.         jQuery(postForm).html(data);
    27.       },
    28.       error: function (jqXHR, text, error) {
    29.         jQuery(postForm).html(error);
    30.       }
    31.     });
    32.    
    33.     return false;
    34.   });
    35.  
    36. });
    код в post.php

    Код (Text):
    1. <?php
    2. if ($_SERVER["REQUEST_METHOD"] == "POST") {
    3.   if (isset($_POST['name1'])) {$name = $_POST['name1'];}else{
    4.     echo 'Введите имя';
    5.   }
    6.   if (isset($_POST['phone2'])) {$phone = $_POST['phone2'];}else{
    7.     echo 'Введите телефон';
    8.   }
    9.   $to = "info@frunze.kz"; /*Укажите адрес, га который должно приходить письмо*/
    10.   $sendfrom   = "info@frunze.kz"; /*Укажите адрес, с которого будет приходить письмо, можно не настоящий, нужно для формирования заголовка письма*/
    11.   $headers  = "From:" . strip_tags($sendfrom) . "\r\n";
    12.   $headers .= "Reply-To: ". strip_tags($sendfrom) . "\r\n";
    13.   $headers .= "MIME-Version: 1.0\r\n";
    14.   $headers .= "Content-Type: text/html;charset=utf-8 \r\n";
    15.   $subject = "Заявка с сайта";
    16.   $message = "Заявка с сайта <br>
    17. <b>Имя пославшего:</b> $name <br>
    18. <b>Телефон:</b> $phone<br>
    19. <b>Тип:</b> $type<br>";
    20.   $send = mail ($to, $subject, $message, $headers);
    21.   if ($send == 'true')
    22.   {
    23.     echo '<center>
    24. Спасибо за отправку вашего сообщения!
    25. </center>';
    26.   }
    27.   else
    28.   {
    29.     echo '<center>
    30.  
    31. <b>Ошибка. Сообщение не отправлено!</b>
    32.  
    33. </center>';
    34.   }
    35. } else {
    36.   http_response_code(403);
    37.   echo "Попробуйте еще раз";
    38. }
    39.  
    40. ?>
     
  2. Artur_hopf

    Artur_hopf Активный пользователь

    С нами с:
    7 май 2018
    Сообщения:
    2.266
    Симпатии:
    405
    @kasper051 какой то ужос у вас тут твориться, но можно в форму засунуть:
    HTML:
    1. <a data-fancybox data-src="#hidden-content" href="javascript:;">Заказать</a>
    2.                
    3.                     <div style="display: none;" id="hidden-content">
    4.    
    5.                             <h4>Ваш выбор</h4>
    6.                             <p>Тип:</p>
    7.                             <p>{{ myOption.myType }}</p>
    8.                             <p>Размер отверстия, a:</p>
    9.                             <p>{{ myOption.mySize }}</p>
    10.                             <p>Размер шага 1, t:</p>
    11.                             <p>{{ myOption.myStep }}</p>
    12.                             <p>Размер шага 2, t:</p>
    13.                             <p>{{ myOption.myStep2 }}</p>
    14.                             <p>Открытая поверхность:</p>
    15.                             <p>{{ myOption.mySpace }}</p>
    16.                             <p>Максимальная ширина:</p>
    17.                             <p>{{ myOption.myMaxSize }}</p>
    18.          
    19.       <div id="myform">
    20.       <div class="myform">
    21.       <form class="myform_form" id="myform_post">
    22.           <input type="text"  id="name1" name="name1" placeholder="Введите ваше имя">
    23.           <input type="text"  id="phone2" name="phone2" placeholder="Введите ваш номер телефона">
    24.           <input type="text" name="type" value="{{ myOption.myType }}">
    25.           <input type="text" name="size" value="{{ myOption.mySize }}">
    26.           <input type="text" name="step" value="{{ myOption.myStep }}">
    27.           <input type="text" name="step2" value="{{ myOption.myStep2 }}">
    28.           <input type="text" name="space" value="{{ myOption.mySpace}}">
    29.           <input type="text" name="maxSize" value="{{ myOption.myMaxSize}}">
    30.           <input type="submit" name="submit" class="m-btn" value="Заказать">
    31.       </form>
    32.     </div>
    33.   </div>
    34. </div>
    потом в php использовать так:
    PHP:
    1. $_POST['type'];
    2. $_POST['size'];
    3. $_POST['step'];
    4. $_POST['step2'];
    5. $_POST['space'];
    6. $_POST['maxSize'];
     
  3. Artur_hopf

    Artur_hopf Активный пользователь

    С нами с:
    7 май 2018
    Сообщения:
    2.266
    Симпатии:
    405
    И если вы будите использовать например эту версию jquery:
    https://code.jquery.com/jquery-3.4.1.min.js

    То можно ваш js код сократить до:
    Код (Javascript):
    1. $(document).ready(function () {
    2.   $("#modal_post").submit(function () {
    3.       $.post( "/wp-content/themes/danex_ltd/post.php", postForm.serialize())
    4.       .done(function( data ) {
    5.          $("#modal_post").html(data);
    6.       }).fail(function(jqXHR){
    7.           $("#modal_post").html(jqXHR.responseText);
    8.       });
    9.    });
    10. });
    И зачем вам два php файла с одними теми же данными, post.php и post2.php?
     
  4. kasper051

    kasper051 Новичок

    С нами с:
    29 май 2019
    Сообщения:
    2
    Симпатии:
    0
    первый php это на другую кнопку "оставить завку". а post2.php на кнопку заказать. и мне нужно чтобы вместе с формой отправились на почту данные которые выбрал клиент в блоке ваш выбор. можете посмотерт здесь для полной ясности https://frunze.kz/productciya/perforirovannye-listy/
     
  5. Artur_hopf

    Artur_hopf Активный пользователь

    С нами с:
    7 май 2018
    Сообщения:
    2.266
    Симпатии:
    405
    у вас в value данные не записываются, сделайте так чтобы как сюда <p>{{ myOption.myType }}</p> записывалось и в value.Пока у вас так:
    ewweeweweww.jpg