AlexeiiKozachuk
@AlexeiiKozachuk

Как подключить форму отправки email?

Всем привет !) Есть такая форма на сайте , как сделать её работоспособной ?
<form id="contact-form">
                <div class="row">
                    <div class="col-md-6">
                        <div class="form-group">
                            <label for="name">
                                Name</label>
                            <input type="text" class="form-control" id="name" placeholder="Enter name" required="required" />
                        </div>
                        <div class="form-group">
                            <label for="email">
                                Email Address</label>
                            <div class="input-group">
                                <span class="input-group-addon"><span class="glyphicon glyphicon-envelope"></span>
                                </span>
                                <input type="email" class="form-control" id="email" placeholder="Enter email" required="required" /></div>
                        </div>
                        <div class="form-group">
                            <label for="subject">
                                Subject</label>
                            <select id="subject" name="subject" class="form-control" required="required">
                                <option value="na" selected="">Choose One:</option>
                                <option value="service">General Customer Service</option>
                                <option value="suggestions">Suggestions</option>
                                <option value="product">Product Support</option>
                            </select>
                        </div>
                    </div>
                    <div class="col-md-6">
                        <div class="form-group">
                            <label for="name">
                                Message</label>
                            <textarea name="message" id="message" class="form-control" rows="9" cols="25" required="required"
                                placeholder="Message"></textarea>
                        </div>
                    </div>
                    <div class="col-md-12">
                        <button type="submit" class="btn btn-skin pull-right" id="btnContactUs">
                            Send Message</button>
                    </div>
                </div>
                </form>
  • Вопрос задан
  • 2282 просмотра
Решения вопроса 1
Необходимо у формы указать обработчик и метод передачи данных, выше в вашем коде, обработчик - файл email.php в корневом каталоге сайта:
<form id="contact-form" action="/email.php" metod="post">

Данные отправлять используя ajax, делаю проверку на заполненность полей, для этого необходимы библиотека jquery и сам файл скрипта, например script.js лежащий в папке js в корне сайта
Подключаем их в head:
<script src="https://code.jquery.com/jquery-2.1.4.min.js"></script>
<script src="/js/script.js"></script>

Ниже сам скрипт script.js:

$(document).ready(function(){
    $('#contact-form').submit(function(){
            var subject = $(this).find("#subject :selected").text();
            var name = $(this).find("#name").val();
            var email = $(this).find("#email").val();
            var message = $(this).find("#message").val();

            if(!!name && !!email && !!message){
                $.ajax({
                    type: "POST",
                    url: "/email.php",
                    data: {"subject": subject, "name": name,"email": email, "message": message},
                    cache: false,
                    success: function(){
                        /* действия при успешной отправке */
                    }
                })
            }
        return false;
    });
});

И последнее сам обработчик email.php, который отправляет письма, в последней строке указывается адрес получателя и заголовок письма:
<? header("Content-type: text/html; charset=utf-8");

	$text = "<b>subject</b>: ".$_POST['subject']."<br>";
	$text .= "<b>name</b>: ".$_POST['name']."<br>" ;
	$text .= "<b>email</b>: ".$_POST['email']."<br>";
	$text .= "<b>message</b>: ".$_POST['message']."<br>";
	$headers .= "MIME-Version: 1.0\r\n";
	$headers .= "Content-Type: text/html; charset=UTF-8\r\n";
	mail('mail@mail.ru', 'Заголовок письма', $text, $headers);

?>
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
woonem
@woonem
Вы наверно искали скрипт отправки e-mail, а нашли форму отправки e-mail.
Ищите в Google "php скрипт отправки email".
И позаботьтесь о том, чтоб php исполнялся в вашем файле, то есть ваш файл должен быть с расширением .php, на хостинге (или на вашем сервере) должен быть установлен php.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
YCLIENTS Москва
от 200 000 до 350 000 ₽
Ведисофт Екатеринбург
от 25 000 ₽
ИТЦ Аусферр Магнитогорск
от 100 000 до 160 000 ₽
26 апр. 2024, в 07:47
2000 руб./за проект
26 апр. 2024, в 06:46
1000 руб./в час
26 апр. 2024, в 05:31
1000 руб./за проект