Почему форма заявки не работает?
index1.html
<!DOCTYPE html> <html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <meta name="description" content="Пример простой формы обратной связи" /> <title>Форма связи</title> <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes"/> <link rel="stylesheet" type="text/css" media="screen" href="style1.css"> </head> <body> <header> </header> <main> <div class="main-content"> <form class="obratnuj-zvonok" autocomplete="off" action='email.php' method='post'> <div class="form-zvonok"> <div> <label>Имя <span>*</span></label> <input type='text' name='username' required></div> <div> <label>Номер телефона<span>*</span></label> <input type='text' name='usernumber' required></div> <div> <label>E-mail<span>*</span></label> <input type='text' name='question'> </div> <input class="bot-send-mail" type='submit' value='Послать заявку'> </div> </form> </div> </main> <footer> </footer> </body> </html> |
<!DOCTYPE html> <html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <meta name="description" content="Пример простой формы обратной связи" /> <title>Форма связи</title> <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes"/> <link rel="stylesheet" type="text/css" media="screen" href="style1.css"> </head> <body> <header> </header> <main> <div class="main-content"> <form class="obratnuj-zvonok" autocomplete="off" action='email.php' method='post'> <div class="form-zvonok"> <div> <label>Имя <span>*</span></label> <input type='text' name='username' required></div> <div> <label>Номер телефона<span>*</span></label> <input type='text' name='usernumber' required></div> <div> <label>E-mail<span>*</span></label> <input type='text' name='question'> </div> <input class="bot-send-mail" type='submit' value='Послать заявку'> </div> </form> </div> </main> <footer> </footer> </body> </html>
style1.css
.obratnuj-zvonok{ width: 100%; max-width: 350px; } .form-zvonok{ width: 100%; display: flex; flex-direction: column; padding: 0 20px; box-sizing: border-box; } .form-zvonok div{ padding: 15px 0; } .bot-send-mail{ box-sizing: border-box; width: 100%; } .form-zvonok label,.form-zvonok input{ display: block; width: 100%; box-sizing: border-box; } .form-zvonok label{ margin-bottom: 5px; font-weight: bold; } .form-zvonok input{ padding: 10px 15px; margin-top: 10px; } .form-zvonok label span{ color: red; } .form-zvonok .bot-send-mail{ padding: 15px; margin-top: 10px; background: none; border: none; text-transform: uppercase; color: #fff; font-weight: bold; background-color: #009b97; cursor: pointer; border: 3px #009b97 solid; border-radius: 5px; } .form-zvonok .bot-send-mail:hover{ color: #009b97; background-color: #fff; } |
.obratnuj-zvonok{ width: 100%; max-width: 350px; } .form-zvonok{ width: 100%; display: flex; flex-direction: column; padding: 0 20px; box-sizing: border-box; } .form-zvonok div{ padding: 15px 0; } .bot-send-mail{ box-sizing: border-box; width: 100%; } .form-zvonok label,.form-zvonok input{ display: block; width: 100%; box-sizing: border-box; } .form-zvonok label{ margin-bottom: 5px; font-weight: bold; } .form-zvonok input{ padding: 10px 15px; margin-top: 10px; } .form-zvonok label span{ color: red; } .form-zvonok .bot-send-mail{ padding: 15px; margin-top: 10px; background: none; border: none; text-transform: uppercase; color: #fff; font-weight: bold; background-color: #009b97; cursor: pointer; border: 3px #009b97 solid; border-radius: 5px; } .form-zvonok .bot-send-mail:hover{ color: #009b97; background-color: #fff; }
email.php
<?php $to = "";//Почтовый ящик на который будет отправленно сообщение $subject = "У вас новая заявка!";//Тема сообщения $message = "Заявка";//Сообщение, письмо $headers = "Content-type: text/plain; charset=utf-8 rn";//Шапка сообщения, содержит определение типа письма, от кого, и кому отправить ответ на письмо // Проверяем или метод запроса POST if($_SERVER["REQUEST_METHOD"] == "POST"){ // Поочередно проверяем или были переданные параметры формы, или они не пустые if(isset($_POST["username"]){ //Если параметр есть, присваеваем ему переданое значение $name =trim(strip_tags($_POST["username"])); } if(isset($_POST["usernumber"])) { $number = trim(strip_tags($_POST["usernumber"])); } if (isset( $_POST["question"])) { $question = trim(strip_tags($question)); } // Формируем письмо $message = "<html>"; $message .= "<body>"; $message .= "Телефон: ".$number; $message .= "<br />"; $message .= "Имя: ".$name; $message .= "<br />"; $message .= "Вопрос: ".$question; $message .= "</body>"; $message .= "</html>"; // Окончание формирования тела письма // Посылаем письмо mail ($to, $subject, $message, $headers); } else { exit; } ?> |
<?php $to = "";//Почтовый ящик на который будет отправленно сообщение $subject = "У вас новая заявка!";//Тема сообщения $message = "Заявка";//Сообщение, письмо $headers = "Content-type: text/plain; charset=utf-8 rn";//Шапка сообщения, содержит определение типа письма, от кого, и кому отправить ответ на письмо // Проверяем или метод запроса POST if($_SERVER["REQUEST_METHOD"] == "POST"){ // Поочередно проверяем или были переданные параметры формы, или они не пустые if(isset($_POST["username"]){ //Если параметр есть, присваеваем ему переданое значение $name =trim(strip_tags($_POST["username"])); } if(isset($_POST["usernumber"])) { $number = trim(strip_tags($_POST["usernumber"])); } if (isset( $_POST["question"])) { $question = trim(strip_tags($question)); } // Формируем письмо $message = "<html>"; $message .= "<body>"; $message .= "Телефон: ".$number; $message .= "<br />"; $message .= "Имя: ".$name; $message .= "<br />"; $message .= "Вопрос: ".$question; $message .= "</body>"; $message .= "</html>"; // Окончание формирования тела письма // Посылаем письмо mail ($to, $subject, $message, $headers); } else { exit; } ?>
Дополнительно:
Дебаг. Сначала проверяете что вообще что-либо работает, например делаете <?=phpinfo();?> первой строчкой пхп файла, после этого можно что-то понимать - работает ли сервер и какие настройки.
Ответы:
Скорее всего потому, что выполняется на домашнем уютненьком компике под виндоус.
И надо погуглить "PHP отправить емейл под виндоус"
Но в данном случае надо прочитать, что вам пишут, и дальше гуглить Не работает POST запрос 405 Not Allowed
Скорее всего, попросту не установлен РНР.
Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.
Пока нет других ответов. Будьте первым, кто поможет автору.
Ответить на вопрос

Для начала, необходимо провести анализ кода формы заявки на вашем сайте. Возможно, проблема заключается в неправильной настройке или ошибке в коде. Проверьте следующие моменты:
1. Убедитесь, что все обязательные поля формы правильно настроены и не содержат ошибок в атрибутах или их значениях.
2. Проверьте правильность указания пути к обработчику формы. Убедитесь, что путь указан верно и соответствует реальному файлу, который обрабатывает данные из формы.
3. Проверьте наличие скриптов или плагинов, которые могут блокировать отправку формы. Иногда конфликты между различными скриптами могут вызывать некорректную работу формы.
4. Проверьте файл обработчика формы на наличие ошибок. Убедитесь, что все переменные правильно передаются и обрабатываются.
5. Проверьте файлы стилей CSS, которые могут влиять на отображение формы. Иногда неправильное оформление элементов формы может привести к некорректной работе.
Если после выполнения всех вышеперечисленных действий проблема не решена, рекомендуется провести отладку кода с помощью инструментов разработчика браузера, чтобы выявить возможные ошибки или проблемные моменты. Также полезно проверить логи сервера на наличие ошибок при отправке формы.
Если у вас есть конкретный код формы или обработчика, вы можете предоставить его для более детального анализа и помощи в решении проблемы.