Контактная форма не работает из бесплатного шаблона

-3

Я получил этот бесплатный шаблон, но контактная форма не работает вообще. В нем говорится, что сообщение отправлено, но я не получаю никакого сообщения. Форма выглядит очень хорошо, поэтому я не хочу ее менять, но она не работает. Разработчик не предоставляет техническую помощь для бесплатных шаблонов. Пожалуйста, помогите мне и заблаговременно!

HTML

        <form id="main-contact-form" name="contact-form" role="form" method="post" action="sendemail.php">
                        <div class="form_status" style="display: none;"><p class="text-success">Thank you for contacting us. We'll get back to you shortly.</p></div>
                            <div class="form-group">
                                <input type="text" name="name" class="form-control" placeholder="Name" required>
                            </div>
                            <div class="form-group">
                                <input type="email" name="email" class="form-control" placeholder="Email" required>
                            </div>
                            <div class="form-group">
                                <input type="text" name="subject" class="form-control" placeholder="Subject" required>
                            </div>
                            <div class="form-group">
                                <textarea name="message" class="form-control" rows="8" placeholder="Message" required></textarea>
                            </div>
                            <button type="submit" class="btn btn-primary">Send Message</button>
                        </form>

PHP

<?php
$name       = @trim(stripslashes($_POST['name'])); 
$from       = @trim(stripslashes($_POST['email'])); 
$subject    = @trim(stripslashes($_POST['subject'])); 
$message    = @trim(stripslashes($_POST['message'])); 
$to         = '[email protected]';//replace with your email

$headers   = array();
$headers[] = "MIME-Version: 1.0";
$headers[] = "Content-type: text/plain; charset=iso-8859-1";
$headers[] = "From: {$name} <{$from}>";
$headers[] = "Reply-To: <{$from}>";
$headers[] = "Subject: {$subject}";
$headers[] = "X-Mailer: PHP/".phpversion();

mail($to, $subject, $message, $headers);

die;

JS

var form = $('#main-contact-form');
form.submit(function(event){
    event.preventDefault();
    var form_status = $('<div class="form_status"></div>');
    $.ajax({
        url: $(this).attr('action'),
        url: '../sendemail.php',
        //type : $(this).attr('method'),
        //data : $(this).serialize(),

        beforeSend: function(){
            form.prepend( form_status.html('<p><i class="fa fa-spinner fa-spin"></i> Email is sending...</p>').fadeIn() );
        }
    }).done(function(data){
        form_status.html('<p class="text-success">Thank you for contacting us. We will get back to you shortly</p>').delay(3000).fadeOut();
    });
});
  • 1
    ваши почтовые заголовки подведут вас. Снова RTM; ты что-то пропустил. Изменить: Неважно, здесь implode("\r\n", $headers) там, решено. Согласно Fffffff невероятное руководство php.net/manual/en/function.mail.php
Теги:
contact-form

1 ответ

2

Публикация в качестве вики-сообщества.

Ваши заголовки писем не работают.

Поэтому добавьте implode("\r\n", $headers) в соответствии с инструкциями руководства:

Пример из руководства:

<?php
$headers   = array();
$headers[] = "MIME-Version: 1.0";
$headers[] = "Content-type: text/plain; charset=iso-8859-1";
$headers[] = "From: Sender Name <[email protected]>";
$headers[] = "Bcc: JJ Chong <[email protected]>";
$headers[] = "Reply-To: Recipient Name <[email protected]>";
$headers[] = "Subject: {$subject}";
$headers[] = "X-Mailer: PHP/".phpversion();

mail($to, $subject, $email, implode("\r\n", $headers));
?>
  • 0
    Это не сработало.
  • 0
    @Nnn проверьте ошибки, затем php.net/manual/en/function.error-reporting.php и посмотрите на свою консоль.
Показать ещё 2 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню