En supposant que vous souhaitiez l'exécuter à partir d'un formulaire, vous devrez définir votre balise de formulaire HTML comme suit :
<form action="contact.php" method="post">
Vous devez alors renommer contact.html
vers contact.php
(n'importe quel éditeur de texte devrait pouvoir le faire facilement).
Enfin, vous utilisez le header()
de PHP fonction, qui provoquera des erreurs si vous avez une sortie vers le navigateur avant qu'il ne soit appelé. Cela inclut l'utilisation de PHP echo
structure. Votre contact.php
Le fichier doit ressembler à ceci (et se trouver dans le même répertoire que votre fichier HTML contenant le formulaire) :
<?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>';
}
}
?>
Remarque : J'ai corrigé un peu votre mise en page et modifié certaines des conditions que vous utilisiez. Le premier elseif
était en fait redondant, et un else
suffira.