R
R
redd_i2017-01-24 17:15:35
PHP
redd_i, 2017-01-24 17:15:35

Why doesn't it send the file and doesn't download the file at all?

Hello. I wanted to send messages to e-mail without refreshing the page.
I found an article: https://habrahabr.ru/sandbox/93363/
But for some reason, when you click on the button, it doesn’t send anything, and in general, as I understand it, it doesn’t load the send.php file. I’ll
show you what you need. I will be grateful in advance
Code in the header:

<script type="text/javascript">
$(document).ready(function(){
    $("#form").submit(function() { //устанавливаем событие отправки для формы с id=form
            var form_data = $(this).serialize(); //собераем все данные из формы
            $.ajax({
            type: "POST", //Метод отправки
            url: "ol.php", //путь до php фаила отправителя
            data: form_data,
            success: function() {
                   //код в этом блоке выполняется при успешной отправке сообщения
                   alert("Ваше сообщение отпрвлено!");
            });
    });
});    
</script>

Form code:
<form id="form" class="action-form">
              <div>
                <label for=""><i class="fa fa-user"></i></label>
                <input type="text" value="" name="name" class="itext osans ia-person" placeholder="Ваше имя">
              </div>
              <div>
                <label for=""><i class="fa fa-phone"></i></label>
                <input type="tel" value="" name="phone" class="itext osans ia-phone" placeholder="Введите номер телефона">
              </div>
              <div>
                <label for=""><i class="fa fa-envelope-o"></i></label>
                <input type="text" value="" name="email" class="itext osans ia-email" placeholder="Введите email">
              </div>
              <div>
                <center><input style="border: none;background: #E74C3C;border-bottom: 2px solid #cc4135;padding: 10px 40px 10px 40px;text-decoration: none;color: #fff;" type="submit" value="Получить консультацию" class="ibutton"></center>
              </div>
            </form>

ol.php code
<?
if((isset($_POST['email'])&&$_POST['email']!="")&&(isset($_POST['name'])&&$_POST['name']!="")&&(isset($_POST['phone'])&&$_POST['phone']!="")){ //Проверка отправилось ли наше поля name и не пустые ли они
        $to = '[email protected]'; //Почта получателя, через запятую можно указать сколько угодно адресов
        $subject = 'Обратный звонок'; //Загаловок сообщения
        $message = '
                <html>
                    <head>
                        <title>'.$subject.'</title>
                    </head>
                    <body>
                        <p>Имя: '.$_POST['name'].'</p>
                        <p>Телефон: '.$_POST['phone'].'</p>                        
                    </body>
                </html>'; //Текст нащего сообщения можно использовать HTML теги
        $headers  = "Content-type: text/html; charset=utf-8 \r\n"; //Кодировка письма
        $headers .= "From: Отправитель <[email protected]>\r\n"; //Наименование и почта отправителя
        mail($to, $subject, $message, $headers); //Отправка письма с помощью функции mail
}
?>

added to the address bar when the button is clicked:
?name=full name&phone=11111111111&email=test%40gmail.com

Answer the question

In order to leave comments, you need to log in

1 answer(s)
D
Denis Ruchiev, 2017-01-24
@redd_i

You are missing the closing quote success: function, js does not work, this is how it should work

$(document).ready(function(){
    $("#form").submit(function() { //устанавливаем событие отправки для формы с id=form
            var form_data = $(this).serialize(); //собераем все данные из формы
            $.ajax({
            type: "POST", //Метод отправки
            url: "send.php", //путь до php фаила отправителя
            data: form_data,
            success: function() {
                   //код в этом блоке выполняется при успешной отправке сообщения
                   alert("Ваше сообщение отпрвлено!");
            }
            });
    });
});

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question