如何重定向到thankyou.html页面(PHP)
我试图在邮件发送后重定向到thankyou.html,但我没有做到。如何重定向到thankyou.html页面(PHP)
我已经使用标题选项,但它并没有与我一起工作。 可能是我做错了事。 当有人提交此查询时,页面应该去thankyou.html,我已经做了这个页面。
这是我的PHP脚本
<?php
include("connect.php");
if(isset($_POST['submit'])){
$name = $_POST['name'];
$email = $_POST['email'];
$phone = $_POST['phone'];
$treatment = $_POST['treatment'];
$gender = $_POST['gender'];
$date = date('y/m/d');
$message = $_POST['message'];
$to = '[email protected]' ;
$subject = 'Inquiry' ;
$query = "insert into inquiry
(name,email,phone,treatment,gender,date) values ('$name','$email','$phone','$treatment','$gender','$date')";
if(mysqli_query($db_conx, $query)){
echo "<script>alert('Thank you for submitting your query, our doctors will call you soon!')</script>";
}
mail ($to, $subject,
"From:" . $name .
", Email: " . $email .
", Number: ". $phone .
", Gender: " . $gender.
", Treatment: " . $treatment.
", Message: " . $message );
}
?>
您这里有两个选择,
1)要么你可以使用:
header('Location: http://domain.com/thank-you.html');
2)用javascript:
window.location.href='http://domain.com/thankyou.html';
此外, 您可以通过Ajax发布邮件数据,如果数据被成功发布,你可以重定向:)
嗨,先生你可以在哪里我必须在我的代码 – Jayprakash
写头选项您可以使用 'echo“”;' 但是既然你已经在使用javascript了,javascript在这里对你更好:) –
非常感谢你,我已经做到了 – Jayprakash
尝试使用header('Location: http://xxxxxxxx')
参考:http://php.net/manual/en/function.header.php
<?php
/* Redirect to a different page in the current directory that was requested */
$host = $_SERVER['HTTP_HOST'];
$uri = rtrim(dirname($_SERVER['PHP_SELF']), '/\\');
$extra = 'mypage.php';
header("Location: http://$host$uri/$extra");
exit;
?>
你的代码是不安全的。它容易受到[邮件标题注入](https://en.wikipedia.org/wiki/Email_injection)和[sql注入](https://en.wikipedia.org/wiki/SQL_injection)的影响。 – Jacco