0
Ich versuche eine Umleitung zu Thank you! Seite nach erfolgreichem Validieren von Formularinformationen und Generieren einer E-Mail. Aber die Header-Funktion funktioniert nicht/Seite leitet nicht um und ich bekomme stattdessen mein 404. Mein Code ist unten angegeben:Header() Funktion Redirect?
<?php
/* Set e-mail recipient */
$myemail = "[email protected]";
$subject = "Visitor Message";
/* Check all form inputs using check_input function */
$firstname = check_input($_POST['firstname'], "Enter your first name");
$lastname = check_input($_POST['lastname'], "Enter your last name");
$email = check_input($_POST['emailaddress']);
$message = check_input($_POST['message'], "Write your message");
/* If e-mail is not valid show error message */
if (!preg_match("/([\w\-]+\@[\w\-]+\.[\w\-]+)/", $email))
{
show_error("E-mail address not valid");
}
/*Prepare the message for the e-mail */
$emailmessage = "Hello!
Your have received a message!
Name: $firstname $lastname
E-mail: $email
Message:
$message
End of message
";
/* Send the message using mail() function */
mail($myemail, $subject, $emailmessage);
/* Redirect visitor to the thank you page */
header('Location: http://www.mywebsite.com/thanks.html');
exit();
/* Functions we used */
function check_input($data, $problem='')
{
$data = trim($data);
$data = stripslashes($data);
$data = htmlspecialchars($data);
if ($problem && strlen($data) == 0)
{
show_error($problem);
}
return $data;
}
function show_error($myError)
{
?>
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="tsd_main.css">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>TSD</title>
</head>
<body>
<div class="header">
<img src="twosundawnbanner.png" id="banner">
<ul>
<li><a href="index.hmtl">Home</a></li>
<!-- <li><a href="#news">News</a></li>
-->
<li><a href="#services">Services</a></li>
<li><a href="#projects">Projects</a></li>
<li><a href="#giving">Giving</a></li>
<li><a href="about.html">About</a></li>
<li><a href="#contact">Contact</a></li>
<li style="float:right"><a class="active" href="#shop">Shop</a></li>
</ul>
</div>
<div class="maincontent">
<b>Please correct the following error:</b><br />
<?php echo $myError; ?>
</div>
<div class="footer">
TSD © 2017
</div>
</body>
</html>
<?php
exit();
}
?>
zu verstehen, wenn Sie erhalten, ein 404-Fehler, die Umleitung funktioniert. Vermutung, dass es keine tatsächliche Seite unter http: // www.mywebsite.com/thank.html gibt, auf die umgeleitet wird. Stellen Sie sicher, dass die Domäne und der Speicherort der Datei korrekt sind. Andernfalls wird eine '.htaccess'-Regel oder eine andere Bedingung angewendet, die das gewünschte Ergebnis verhindert. Siehe: https://stackoverflow.com/a/768472/1144627 – fyrye
Vielen Dank! Du hast mich in die richtige Richtung gelenkt! –