@roman_tonkoshkurov

Вызов модального окна после отработки php?

Доброго времени суток!

Имеется простая форма, листинг:
<div class="container">
    <div class="row">
        <div class="col-sm-4">
            <form action="telegram.php" method="POST">
                <legend>Создание заявки</legend>
                <div class="form-group">
                    <label for="">Введите ваше имя</label>
                    <input type="text" class="form-control" id="" name="user_name" placeholder="Например, Иван">
                </div>
                <div class="form-group">
                    <label for="">Введите номер телефона</label>
                    <input type="text" class="form-control" id="" name="user_phone" placeholder="+7 (999) 99 99 999">
                </div>
                <div class="form-group">
                    <label for="">Введите email</label>
                    <input type="text" class="form-control" id="" name="user_email" placeholder="mail@mail.ru">
                </div>
                <div class="form-group">
                    <label for="">Кратко изложите проблему</label>
                    <input type="text" class="form-control" id="" name="user_problem" placeholder="Краткое изложение проблемы">
                </div>
                <button type="submit" class="btn btn-primary">Отправить форму</button>
            </form>
        </div><!-- .col-sm-4 -->
    </div> <!-- .row -->
</div><!-- /.container -->


И имеется php, который обрабатывает форму и затем отправляет данные в чат в телеграмме, соединение идет через PROXY HTTP
<?php

#Объявление переменных
define('TELEGRAM_TOKEN', 'XXXXXXX:XXXXXXXXX');
define('TELEGRAM_CHATID', 'XXXXXXXXXXX');

$name = $_POST['user_name'];
$phone = $_POST['user_phone'];
$email = $_POST['user_email'];
$problem = $_POST['user_problem'];
$date = date("d.m.y", strtotime('+2 hour'));
$time = date("H:i", strtotime('+2 hour'));

$arr = array(
    'Имя пользователя: ' => $name,
    'Телефон: ' => $phone,
    'Email: ' => $email,
    'Текст обращения: ' => $problem,
    'Дата:  ' => $date,
    'Время:  ' => $time
);

foreach ($arr as $key => $value) {
    $txt .=$key .$value."\n";
};

message_to_telegram($txt);

function message_to_telegram($text) {
    $ch = curl_init();
    curl_setopt_array(
        $ch,
        array(
            CURLOPT_URL => 'https://api.telegram.org/bot' . TELEGRAM_TOKEN . '/sendMessage',
            CURLOPT_POST => TRUE,
            CURLOPT_RETURNTRANSFER => TRUE,
            CURLOPT_TIMEOUT => 10,
            CURLOPT_POSTFIELDS => array(
                'chat_id' => TELEGRAM_CHATID,
                'text' => $text,
            ),
            CURLOPT_PROXY => 'xxx-xxxx.xx:33333',
            CURLOPT_PROXYUSERPWD => 'xxx-xxxxxx:xxXXxx',
            CURLOPT_PROXYTYPE => CURLPROXY_HTTP,
            CURLOPT_PROXYAUTH => CURLAUTH_BASIC,
        )
    );
    curl_exec($ch);
}


Вопрос такой, по нажатию кнопки "Отправить форму" как можно вызвать модальное окно, где например написано "Ваша заявка успешно принята, номер заявки такой-то такой то" и кнопка "OK" по нажатии которой модальное окно закрывается и форма очищается?
Пожалуйста помогите. Заранее очень благодарен!
  • Вопрос задан
  • 291 просмотр
Решения вопроса 1
irishmann
@irishmann
Научись пользоваться дебаггером
При нажатии кнопки "Отправить форму" открывать модальное окно с прелоудером или текстом "Пжлста подождите...", считывать данные с формы, отправлять через AJAX. Получаем ответ, анализируем его и если все хорошо, меняем содержимое модального окна на "Форма отправлена успешно", если ответ плохой, или его нет, или возникла ошибка какая-то. Пишем в модальное окно "Ошибка при отправке формы: бла-бла-бла..."
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы