Предлагаю заменить этот код:
if(isset($_POST['submit'])) {
с чем-то очевидным, например:
if(isset($_POST['email'])) {
Также есть пара ошибок:
Это:
$name_field = $_POST['nome'];
$email_field = $_POST['email'];
$message = $_POST['mensagem'];
Должно быть:
$name_field = $_POST['name'];
$email_field = $_POST['email'];
$message = $_POST['message'];
Кроме того, вам нужно проверить, что mail()
возвращает true
. Изменения:
echo "Your form was sent!";
mail($to, $subject, $body);
Кому:
if(mail($to, $subject, $body)) {
echo "Your form was sent!";
} else {
echo "mail() returned error! Your form was not sent!";
}
Если вы уверены, что mail()
действительно выполняется без каких-либо ошибок, но письма по-прежнему не отправляются / не достигают получателя, проверьте журналы сервера, возможно, вам нужно настроить php (обычно нет) или sendmail
.