为了账号安全,请及时绑定邮箱和手机立即绑定

提交 Bootstrap 联系模式后重定向到新页面

提交 Bootstrap 联系模式后重定向到新页面

PHP
泛舟湖上清波郎朗 2021-06-15 13:12:52
用户可以通过 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\n";        $email_content .= "Email: $email\n";        $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?>
查看完整描述

2 回答

?
郎朗坤

TA贡献1921条经验 获得超9个赞

基于:

该站点是在 Jekyll 中构建的...

我们假设有问题的页面是一个静态 HTML 页面。在这种情况下,您的标头不是由 php 脚本设置的。这可能解释了为什么 php 函数 header()没有设置所需的标题。

在您共享的代码示例中,了解如何调用此 php 脚本非常重要。我的猜测是您将表单数据作为 POST 直接从表单发送,或者使用javascript/ajax将数据发送到您的 php 脚本并处理响应。

您可能希望在 javascript 中处理成功案例,并在 php 函数返回成功后处理重定向

但是,如果打算使用 php 的header()函数处理重定向,请考虑将联系表单页面移动到独立的 .php 页面。(但是,鉴于您已经采用了基于 Jekyll 的站点生成器,我不确定我是否会建议此选项)


查看完整回答
反对 回复 2021-06-19
?
达令说

TA贡献1821条经验 获得超6个赞

实际上,如果您的脚本是用 html header manual编写的,则可能会导致问题。但是在这种情况下使用 jquery 或 js 脚本看起来更方便,我的意思是如果您不在控制器中使用 php 标头或类似的东西


查看完整回答
反对 回复 2021-06-19
  • 2 回答
  • 0 关注
  • 217 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信