Не работает форма на сайте
Не работает форма. Сайт запускаю на OpenServer, на хосте тоже не работает. Код не мой
код формы
<?php
if(empty($_POST['name']) || empty($_POST['subject']) || empty($_POST['message']) || !filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)) {
http_response_code(500);
exit();
}
$name = strip_tags(htmlspecialchars($_POST['name']));
$email = strip_tags(htmlspecialchars($_POST['email']));
$m_subject = strip_tags(htmlspecialchars($_POST['subject']));
$message = strip_tags(htmlspecialchars($_POST['message']));
$to = "почта@gmail.com"; // Change this email to your //
$subject = "$m_subject: $name";
$body = "Вы получили новое сообщение из контактной формы.\n\n"."Подробности:\n\nName: $name\n\n\nEmail: $email\n\nSubject: $m_subject\n\nMessage: $message";
$header = "From: $email";
$header .= "Reply-To: $email";
if(!mail($to, $subject, $body, $header))
http_response_code(500);
?>
код html
<form name="sentMessage" action="mail/contact.php" method="POST" id="contactForm" novalidate="novalidate">
<div class="form-row">
<div class="col-sm-6 control-group">
<input type="text" class="form-control p-4" id="name" placeholder="Ваше имя" required="required" data-validation-required-message="Please enter your name" />
<p class="help-block text-danger"></p>
</div>
<div class="col-sm-6 control-group">
<input type="email" class="form-control p-4" name="email" placeholder="Ваша почта" required="required" data-validation-required-message="Please enter your email" />
<p class="help-block text-danger"></p>
</div>
</div>
<div class="control-group">
<input type="text" class="form-control p-4" id="subject" placeholder="Тема" required="required" data-validation-required-message="Please enter a subject" />
<p class="help-block text-danger"></p>
</div>
<div class="control-group">
<textarea class="form-control p-4" rows="6" id="message" placeholder="Сообщение" required="required" data-validation-required-message="Please enter your message"></textarea>
<p class="help-block text-danger"></p>
</div>
<div>
<button class="btn btn-primary btn-block" type="submit" name="sendMessageButton">Отправить</button>
</div>
</form>
Ответы (1 шт):
Автор решения: likel0vsky
→ Ссылка
Если сама форма работает, но не работает именно отправка почты - дело в SMTP сервере. Следует настроить его или воспользоваться библиотекой PHPMailer.