Переадресация на новую страницу после отправки модального контакта Bootstrap

Пользователи могут связаться с нами через всплывающее окно Bootstrap. В настоящее время он передает все и отображает сообщение об успехе (все еще в модальном всплывающем окне). Я хотел бы вместо повторения сообщения перенаправить на совершенно новую страницу (а не на другое всплывающее окно).

Я попытался использовать "header ('Location: contact-thank-you.html'); exit ();", что кажется очевидным решением. Тем не менее, это просто рассматривается как еще одно эхо - он печатает всю страницу (HTML и все) в модальном всплывающем окне.

В консоли нет сообщений об ошибках.

Там нет пробелов выше начала php-файла (который, как я понимаю, может вызвать проблемы).

Я могу решить эту проблему путем перенаправления через JavaScript, но я хочу понять, почему это не работает. Я не повторяю что-либо еще ранее на странице (хотя у меня есть ошибка, если кто-то не отправляет необходимую часть информации), поэтому не должен работать header ()? Разве это не работает с Bootstrap?

Сайт построен на Jekyll, если это имеет какое-либо отношение к проблеме.

Вот примерный план моего php, с большим количеством лишних вещей, удаленных для вашего удовольствия от просмотра :):

<?php
    if ($_SERVER["REQUEST_METHOD"] == "POST") {

        $name = strip_tags(trim($_POST["name"]));
        $email = filter_var(trim($_POST["email"]), FILTER_SANITIZE_EMAIL);

        // Require Email
        if (empty($email)) {
            http_response_code(400); 
            exit;
        }

        // Set the email subject.
        $subject = "$name - New Contact";

        // Build the email content.
        $email_content = ""; 
        $email_content .= "Name: $name
";
        $email_content .= "Email: $email
";
        $email_headers = "From: $name <$email>";
        $recipient = "myname@mycompany.com";

        send_mail($recipient, $subject, $email_content, $email_headers);

        // confirm message was sent
        header('Location: contact-thank-you.html');
        exit();
    }
    // removed mailer function and other sections unessential to this question
?>

Всего 1 ответ


на самом деле, это может вызвать проблемы, если ваш скрипт написан с использованием заголовка html. Но использовать jquery или js-скрипт в таких случаях удобнее, я имею в виду, если вы не используете php header в контроллере или что-то в этом роде


Есть идеи?

10000