Suponiendo que desea ejecutar esto desde un formulario, deberá configurar su etiqueta de formulario HTML de la siguiente manera:
<form action="contact.php" method="post">
A continuación, debe cambiar el nombre de contact.html
a contact.php
(cualquier editor de texto debería poder hacer esto fácilmente).
Finalmente, estás usando el header()
de PHP función, que causará errores si tiene salida al navegador antes de que se llame. Esto incluye el uso de echo
de PHP estructura Tu contact.php
El archivo debería tener este aspecto (y estar en el mismo directorio que el archivo HTML que contiene el formulario):
<?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>';
}
}
?>
elseif
en realidad era redundante, y else
será suficiente.