D
D
dotan902020-04-28 22:17:46
PHP
dotan90, 2020-04-28 22:17:46

Hello. What am I doing wrong?

Guys what am I doing wrong?
I have an HTML form.

<div class="ordering-forms">
            <div class="row">
                <form  id="order_form" method="POST">
                    <input type="hidden" name="formData" value="Оформление заказа">
                    <div class="col-md-6 col-sm-12 forms-wrap">
                        <div class="personal-data">
                            <div class="section__title">Личные данные</div>
                            <fieldset class="fieldset">
                                <input type="text" required="required" data-msg-required="Это поле необходимо заполнить"
                                    name="name" placeholder="Ваше имя" value="" class="input required">
                            </fieldset>
                            <fieldset class="fieldset">
                                <input type="tel" required="required"
                                    data-msg-vekaphonecustomUa="Пожалуйста, введите корректный телефон"
                                    data-msg-phonecustom="Пожалуйста, введите корректный телефон"
                                    data-msg-required="Это поле необходимо заполнить" name="phone"
                                    data-mask="+7 (999) 999-99-99" placeholder="Номер телефона" value=""
                                    class="input js-phone required">
                            </fieldset>
                            <fieldset class="fieldset">
                                <textarea name="comment" placeholder="Ваш комментарий" class="input"></textarea>
                            </fieldset>
                        </div>
                    </div>
                    <div class="col-md-6 col-sm-12 forms-wrap">
                            <div class="additional-options">
                                <div class="section__title">Дополнительные опции</div>
                                <fieldset class="fieldset">
                                    <select data-placeholder="Тип вашего дома" name="type_house" class="select js-select">
                                        <option selected value="">не выбран</option>
                                        <option value="Панельный">Панельный</option>
                                        <option value="Кирпичный">Кирпичный</option>
                                        <option value="Деревянный">Деревянный</option>
                                    </select>
                                </fieldset>
                                <fieldset class="fieldset checkbox-wrap">
                                    <label class="checkbox">
                                        <input type="checkbox" id="ch1" name="options[]" value="Подоконник" checked-true><span
                                            class="checkbox__text">Подоконник</span>
                                    </label>
                                    <label class="checkbox">
                                        <input type="checkbox" id="ch2" name="options[]" value="Отливы" checked-true
                                            class="checkbox"><span class="checkbox__text">Отливы</span>
                                    </label>
                                    <label class="checkbox">
                                        <input type="checkbox" id="ch3" name="options[]" value="Откосы" class="checkbox"><span
                                            class="checkbox__text">Откосы</span>
                                    </label>
                                    <label class="checkbox">
                                        <input type="checkbox" id="ch4" name="options[]" value="Москитная сетка"
                                            class="checkbox"><span class="checkbox__text">Москитная сетка</span>
                                    </label>
                                    <label class="checkbox">
                                        <input type="checkbox" id="ch5" name="options[]" value="Монтаж" checked-true
                                            class="checkbox"><span class="checkbox__text">Монтаж</span>
                                    </label>
                                </fieldset>
                            </div>
                        </div>
                    <div class="ordering-forms__checkbox">
                        <fieldset class="fieldset">
                            <label class="checkbox">
                                <input type="checkbox" name="AGREEMENT" data-rule-required="true"
                                    data-msg-required="Пожалуйста, подтвердите согласие на обработку персональных данных"
                                    required="required">
                                <span class="checkbox__text">Ознакомлен с <a href="reglament.html"
                                        target="_blank">Регламентом о защите персональных данных</a> и выражаю <a
                                        href="agreement.html" target="_blank">согласие</a> на их обработку</span>
                            </label>
                        </fieldset>
                    </div>
                    <fieldset class="fieldset">
                        <!--a(href="#send_request").button.blue.md.link.js-inlineModal-->
                        <button type="submit" name="submit" class="button blue md link js-inlineModal js-send-order">
                            <span>Оформить заказ</span>
                            <svg class="icon icon-edit ">
                                <use xlink:href="#icon-edit"></use>
                            </svg>
                        </button>
                    </fieldset>
                </form>
                <div class="calc-panel__item">
                    <div class="ordering-panel__control">
                        <div class="ordering-panel__control-item"><a href="calc.html" class="ordering-panel__back">
                                <svg class="icon icon-arrow-prev ">
                                    <use xlink:href="#icon-arrow-prev"></use>
                                </svg>Вернуться в калькулятор</a></div>
                    </div>

                </div>
            </div>

        </div>

if there is a button type="submit" button, then nothing happens when the button is pressed, the button is not even pressed. If I put input type="submit" the button is pressed, the data goes to the mail, but an empty letter arrives. What to do?
Here is the JS code
<script>
        $(document).ready(function () {
            $('#order_form').submit(function () {
                var formID = $(this).attr('id'); // Получение ID формы
                var formNm = $('#' + formID);
                $.ajax({
                    type: 'POST',
                    url: 'order_form.php', // Обработчик формы отправки
                    data: formNm.serialize(),
                    success: function (data) {
                        // Вывод текста результата отправки в текущей форме
                        $(formNm).html(data);
                    }
                });
                return false;
            });
        });
    </script>

here is PHP:
<?php
 
 if(isset($_POST['name']));
 if(isset($_POST['phone']));
 if(isset($_POST['email']));
 if(isset($_POST['comment']));
 if(isset($_POST['type_hause']));
 if(isset($_POST['options']));
        {
    $to = "[email protected]"; /*Укажите ваш адрес электронной почты*/
    $headers = "Content-type: text/html; charset = utf-8";
    $subject = "$order_form";
    $message = "<b>Отправитель:</b> " . $name. "<br>";
    $message.= "<b>Телефон:</b>" . $phone."<br>";
    $message.= "<b> E-mail:</b>" . $email."<br>";
    $message.= "<b> Тип дома:</b>" . $type_hause."<br>";
    $message.="<b> Опции: </b>" . $options."<br>";
    foreach($options as $item)
    $message.= "<b>Сообщение:</b>" . $comment."<br>";
    $send = mail ($to, $subject, $message, $headers);

    {
    echo '<div class="modal__icon"><img src="images/logo.svg"></div>
    <span>Ваша заявка успешно отправлена!</span>
    <p>Благодарим вас за обращение в компанию VEKA. Наши партнеры свяжутся с вами в течение
        нескольких часов. Если в течение одного рабочего дня вы не получите ответа, пожалуйста,
        напишите в службу поддержки по адресу
        <a href="mailto:[email protected]"><b>[email protected]</b></a></p>';
    }
}

Answer the question

In order to leave comments, you need to log in

2 answer(s)
I
Igor, 2020-04-28
@dotan90

Probably, in order for people to start using sandboxes for laying out large code, they need to leave no other way out ...
The problem is that for some reason you set a bunch of conditions, put a semicolon after each

if(isset($_POST['name']));
 if(isset($_POST['phone']));
 if(isset($_POST['email']));
 if(isset($_POST['comment']));
 if(isset($_POST['type_hause']));
 if(isset($_POST['options']));
{

change to this
if( isset($_POST['name'])
    and isset($_POST['phone'])
    and isset($_POST['email'])
    and isset($_POST['comment'])
    and isset($_POST['type_hause'])
    and isset($_POST['options']) ) {

D
Dmitry Gordinskiy, 2020-04-28
@DmitriyGordinskiy

What to do?

Learn to debug.

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question