Förutsatt att du vill köra detta från ett formulär, måste du ställa in din HTML-formulärtagg enligt följande:
<form action="contact.php" method="post">
Du bör sedan byta namn på contact.html
till contact.php
(alla textredigerare borde kunna göra detta enkelt).
Slutligen använder du PHPs header()
funktion, som kommer att orsaka fel om du har utdata till webbläsaren innan den anropas. Detta inkluderar att använda PHPs echo
struktur. Din contact.php
filen ska se ut så här (och finnas i samma katalog som din HTML-fil som innehåller formuläret):
<?php
$name = $_POST['name'];
$email = $_POST['email'];
$number = $_POST['number'];
$message = $_POST['message'];
$from = 'From:you';
$to = '[email protected]';
$subject = 'Hello';
$human = $_POST['human'];
$body = "From: $name\n E-Mail: $email\n Number: $number\n Message:\n $message";
if ($_POST['submit']) {
if ($name != '' && $email != '')
{
if ($human == '4')
{
if (mail ($to, $subject, $body, $from))
{
header("Location: thanks.html");
}
else
{
echo '<p>Something went wrong, go back and try again!</p>';
}
}
else
{
echo '<p>You answered the anti-spam question incorrectly!</p>';
}
}
else
{
echo '<p>You need to fill in all required fields!!</p>';
}
}
?>
Obs! Jag fixade din layout lite och ändrade några av de villkor som du använde. Den första elseif
var faktiskt överflödig, och en else
kommer att räcka.