我知道关于这个话题已经有很多问题,但是经历过这些问题我无法理解它们在申请我自己的联系表格方面可能是因为我在PHP和很多人使用wordpress和联系表7这么多答案和搜索结果对我没有帮助
我有几个月的PHP联系表单符合我自己的要求但是我希望表单在提交时重定向到感谢页面
我尝试添加以下代码:
header('Location: thank-you.php');
exit;
但我认为由于我的代码顶部的标题位于
之下include($_SERVER['DOCUMENT_ROOT']."/includes/header.php");
然后在我的表单代码中的一些回声我收到了提交表单时已经发送标题的错误。
我已经尝试添加带有标题的位置并用它替换回声,因为我听到了这个并且代码中的空格可能会导致这个...
下面是我的代码,上面添加了新行:
我的代码页顶部:
include($_SERVER['DOCUMENT_ROOT']."/includes/header.php");
$name = ($_POST['name']);
$email = ($_POST['email']);
$message = ($_POST['message']);
$from = ($_POST['email']);
$to = 'info@mywebsite.co.uk';
$subject = "Enquiry from Visitor " . $name;
$human = ($_POST['human']);
$headers = 'From: ' . $email . "\r\n" .
'Reply-To: ' . $email . "\r\n" .
'X-Mailer: PHP/' . phpversion();
header('Location: thank-you.php');
exit;
这是我的表单上的标头标签正下方的代码,就在表单开始之前:
<h2>Contact Us</h2>
<hr width=10% align=left>
<?php
if (isset($_POST['submit']) && $human == '4') {
if (mail ($to, $subject, $message, $headers)) {
echo '<p>Thanks for getting in touch. Your message has been sent & We will get back to you shortly!</p>';
} else {
echo '<p>Something went wrong, go back and try again!</p>';
}
} else if (isset($_POST['submit']) && $human != '4') {
echo '<p>You answered the anti-spam question incorrectly!</p>';
}
?>
我知道我打算用位置取代回声:thank-you.php但是如果这个人错过了必填字段或者错误地回答了反垃圾邮件问题,我当然还需要回声吗?
注意:我尝试过更换
echo '<p>Thanks for getting in touch. Your message has been sent & We will get back to you shortly!</p>';
带
header('Location: thank-you.php');
exit;
但是当我提交表单
时,我仍会收到相同的错误消息我是PHP的新手,不明白如何在我的代码中加入感谢页面,同时如果表格没有正确填写则保留回声
任何帮助非常感谢!谢谢:))