我有一个问题,因为我是PHP的新手。我写了一个简单的联系表单,但在发送邮件(一切正常)后,它将我带到一个空白页面。有没有办法回到contact.html
页面并显示“已成功发送”消息?
<?php
if(isset($_POST['submit'])) {
$to ='contact@centurioagency.com';
$subject =$_POST['subject'];
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=utf-8' . "\r\n";
$message = "
<html>
<head>
<title>$_POST['subject']</title>
</head>
<body>
<b>Person: </b> ".$_POST['name']." </br>
<b>Email: </b> ".$_POST['email']." </br>
<b>Message: </b> ".$_POST['detail']." </br>
</body>
</html>" ;
mail($to, $subject, $message, $headers);
}
?>
答案 0 :(得分:1)
您可以使用header功能重定向。
header('Location: contact.php?msg=Mail Sent');
exit;
<强> contact.php 强>
if(isset($_GET['msg'])){
echo $_GET['msg'];
}
答案 1 :(得分:0)
header("location:contact.php?msg=YOUR_MSG");
die();
答案 2 :(得分:0)
在您的HTML文件中,您无法使用PHP,因此首先将contact.html更改为contact.php,然后:
试试这个:
if (mail($to, $subject, $message, $headers)) {
header("location:contact.php?msg=sent successfully");
}
在contact.php中
if(isset($_GET['msg'])) {
echo $_GET['msg']
}
答案 3 :(得分:0)
您无法在html页面中获取查询字符串,因此您需要将其转换为php页面
<?php
header('Location: contact.php?msg=sent successfully');
?>
contact.php page
<?php
if($_GET['msg'])
{ ?>
<p>
Message has been sent successfully.
thank you.
</p>
<?php }
?>
其他解决方案:
制作新页面Thankyou.html获取消息并使用此
<?php
header('Location: Thankyou.html');
?>