Проблема с отправкой формы на email

218
23 ноября 2017, 04:26

Код формы:

<form id="contact-form" class="form" name="enq" method="POST" action="form-process.php">
                            <div class="row">
                                <div class="form-group col-md-12">
                                    <input type="text" name="name" class="form-control" id="first-name" placeholder="Ваше имя" required="required">
                                </div>
                                <div class="form-group col-md-12">
                                    <input type="email" name="email" class="form-control" id="email" placeholder="Ваш еmail" required="required">
                                </div>
                                <div class="form-group col-md-12">
                                    <textarea rows="6" name="message" class="form-control" id="description" placeholder="Ваше сообщение ..." required="required"></textarea>
                                </div>
                                <div class="form-group col-md-12 mb0 text-center">
                                    <div class="actions">
                                        <input type="submit" value="Отправить" name="submit" id="submitButton" class="btn btn-lg btn-contact-bg" title="Нажмите что бы отправить" />
                                        <img src="assets/img/ajax-loader.gif" width="16" height="16" id="loader" style="display:none" alt="loading">
                                    </div>
                                </div>
                            </div>
                        </form>

Код обработки JavaScript:

// JavaScript contact form Document
$(document).ready(function() {
    $('form#contact-form').submit(function() {
    $('form#contact-form .error').remove();
    var hasError = false;
    $('.requiredField').each(function() {
    if(jQuery.trim($(this).val()) == '') {
    var labelText = $(this).prev('label').text();
    $(this).parent().append('<span class="error">You forgot to enter your '+labelText+'</span>');
    $(this).addClass('inputError');
    hasError = true;
    } else if($(this).hasClass('email')) {
    var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
    if(!emailReg.test(jQuery.trim($(this).val()))) {
    var labelText = $(this).prev('label').text();
    $(this).parent().append('<span class="error">You entered an invalid '+labelText+'</span>');
    $(this).addClass('inputError');
    hasError = true;
    }
    }
    });
    if(!hasError) {
    $('form#contact-form input.submit').fadeOut('normal', function() {
    $(this).parent().append('');
    });
     $("#loader").show();
        $.ajax({
            url: "form-process.php",
            type: "POST",
            data:  new FormData(this),
            contentType: false,
            cache: false,
            processData:false,
            success: function(data){
              $('form#contact-form').slideUp("fast", function() {
              $(this).before('<div class="success text-success">Ваше сообщение успешно отправлено</div>');
              $("#loader").hide();
              })
            }           
       });
       return false;
    }
   });
});

Код обработчика form-process.php:

<?php 
if(isset($_POST['submit'])) 
{
$sendto   = "маил@mail.ru"; // почта, на которую будет приходить письмо
$name=$_POST['name'];   // сохраняем в переменную данные полученные из поля c именем
$email=$_POST['email']; // сохраняем в переменную данные полученные из поля c телефонным номером
$message=$_POST['message'];  // сохраняем в переменную данные полученные из поля c адресом электронной почты
// Формирование заголовка письма
$subject  = "Новое сообщение";
$headers  = "From: " . strip_tags($mail) . "\r\n";
$headers .= "Reply-To: ". strip_tags($mail) . "\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: text/html;charset=utf-8 \r\n";
// Формирование тела письма
$msg  = "<html><body style='font-family:Arial,sans-serif;'>";
$msg .= "<h2 style='font-weight:bold;border-bottom:1px dotted #ccc;'>Cообщение с сайта</h2>\r\n";
$msg .= "<p><strong>От кого:</strong> ".$name."</p>\r\n";
$msg .= "<p><strong>Почта:</strong> ".$email."</p>\r\n";
$msg .= "<p><strong>Сообщение:</strong> ".$message."</p>\r\n";
$msg .= "</body></html>";
mail($sendto, $subject, $msg, $headers); 
}
?>

При заполнеии формы и отправке её высвечивается сообщение что всё хорошо и сообщение отправлено. Но на email сообщение не приходит, в чём проблема помогите пожалуйста

Вот форма с помощью которой сообщения отправляются, но почему то 1 раз из 100:

 <?php
    $name=$_POST['name'];
    $email=$_POST['email'];
    $message=$_POST['message'];     
    $from="From: $name<$email>\r\nReturn-path: $email";
    $subject="Заказ с сайта";
    mail("мой@маил.ру", $subject, $message, $from)
?>
Answer 1

Не вижу функции mail() в обработчике

READ ALSO
Связь React с backend и ресурсы для разработки

Связь React с backend и ресурсы для разработки

Ну во-первых хочу убедиться что я нашел правильную информациюВшивать PHP или другой код в React не нужно, а нужно просто запрашивать у сервера...

200
Ожидание появление записи mysql

Ожидание появление записи mysql

Нужно, чтобы скрипт ждал когда появится запись в таблице с конкретным id Пробую так но работает неверно:

165
скрипт начал выовдить int() [требует правки]

скрипт начал выовдить int() [требует правки]

Скрипт начал выводить при запросе:

203
поиск по дате в jqGrid PHP

поиск по дате в jqGrid PHP

Добрый деньПодскажите, кто пользовался jqGrid PHP , как реализовать поиск по дате? Календарь для вывода даты появляется, но вот ничего не находит

189