Аватар для Cyber Freak
0 / 0 / 0
Регистрация: 23.04.2015
Сообщений: 69

На почту не приходит уведомление о заявке

23.04.2015, 16:56. Показов 1639. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день!

Есть форма заявки, нужно ввести имя и телефон. Через javascript форма обрабатывается и данные поступают на php скрипт, который должен высылать данные заявки на мою почту.

Проблема в том, что данные не приходят на почту. Скажите, пожалуйста, где может быть ошибка?

Код javascript, который обрабатывает форму:

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
<script type="text/javascript">
        $(document).ready(function() {
            // $(".phonemask").mask("+7 (999) 999-9999");
            $(".fancybox").fancybox();
            
            // modal window
            $('.callback, .buttonbig, .bt_submit2').click(function(){
                var back = $('<div class="back"></div>'),
                h = $(document).height(),
                w = $(window).width(),
                modW = $('.hide').width(),
                modH = $('.hide').height(),
                modX = w/2-modW/2;
                back.css({'width':w,'height':h}).fadeTo("fast", 0.8).appendTo('body');
                $('.hide').show().css({'left':modX,'top':'30%'});
            });
            // close window
            $('.close1').on('click', function(){
                $('.back, .hide, .hide2').hide();
                return false;
            });
            
            // Send mail
            $('.form1 button, .form2 .bt_submit').click(function(){
                var v1 = $(".form1 .form_name").val()  + $(".form2 .form_name").val();
                var v2 = $(".form1 .form_phone").val() + $(".form2 .form_phone").val();
                var v3 = $(".form1 .form_mail").val()  + $(".form2 .form_mail").val();
                if (v1.length == 0) 
                    $('.form_name').addClass('err');
                else
                    $('.form_name').removeClass('err');
                if (v2.length == 0) 
                    $('.form_phone').addClass('err');
                else
                    $('.form_phone').removeClass('err');
    
                if (v1.length > 0 && v2.length > 0) {
                    $(this).hide();
                    $('.form1 input, .form2 input').hide();
                    $('<div class="thanks"><h2>Спасибо за заявку!</h2><p>Мы обязательно свяжемся<br />с Вами в ближайшее время</p></div>').appendTo('.form1, .form2');
                    
                    setTimeout("$('.thanks').fadeOut()", 2500);
                    setTimeout("$('.back, .hide, .hide2').hide(); $('.form1 button, .form2 button').fadeIn(); $('.form_name, .form_phone, .form_mail').val(''); $('.form1 input, .form2 input').show();", 3000);
                    
                    jQuery.ajax({  
                        type: "POST",  
                        url: "srv/callback.php",  
                        data: "name="+v1+"&phone="+v2+"&mail="+v3,  
                        success: function(html){
                            // alert('Отправлено!')
                        }  
                    });  
                    return false;  
                }
            });
 
            
        });
    </script>

Код php, высылающий данные на мой email:

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
<?
 
if ($_POST) { // если передан массив POST
    $name = htmlspecialchars($_POST["name"]); // пишем данные в переменные и экранируем спецсимволы
    $phone = htmlspecialchars($_POST["phone"]);
    $mail = htmlspecialchars($_POST["email"]);
    $subject = "Письмо с сайта ______";
    $message = $name . $phone;
    // $subject = htmlspecialchars($_POST["subject"]);
    // $message = htmlspecialchars($_POST["message"]);
    $json = array(); // подготовим массив ответа
    if (!$name or !$phone) { // если хоть одно поле оказалось пустым
        $json['error'] = 'Вы заполнили не все поля! Обмануть решили? =)'; // пишем ошибку в массив
        echo json_encode($json); // выводим массив ответа 
        die(); // умираем
    }
    if(!preg_match("|^[-0-9a-z_\.]+@[-0-9a-z_^\.]+\.[a-z]{2,6}$|i", $mail)) { // проверим email на валидность
        $json['error'] = 'Не верный формат email! >_<'; // пишем ошибку в массив
        echo json_encode($json); // выводим массив ответа
        die(); // умираем
    }
 
    function mime_header_encode($str, $data_charset, $send_charset) { // функция преобразования заголовков в верную кодировку 
        if($data_charset != $send_charset)
        $str=iconv($data_charset,$send_charset.'//IGNORE',$str);
        return ('=?'.$send_charset.'?B?'.base64_encode($str).'?=');
    }
    /* супер класс для отправки письма в нужной кодировке */
    class TEmail {
    public $from_email;
    public $from_name;
    public $to_email;
    public $to_name;
    public $subject;
    public $data_charset='UTF-8';
    public $send_charset='windows-1251';
    public $body='';
    public $type='text/plain';
 
    function send(){
        $dc=$this->data_charset;
        $sc=$this->send_charset;
        $enc_to=mime_header_encode($this->to_name,$dc,$sc).' <'.$this->to_email.'>';
        $enc_subject=mime_header_encode($this->subject,$dc,$sc);
        $enc_from=mime_header_encode($this->from_name,$dc,$sc).' <'.$this->from_email.'>';
        $enc_body=$dc==$sc?$this->body:iconv($dc,$sc.'//IGNORE',$this->body);
        $headers='';
        $headers.="Mime-Version: 1.0\r\n";
        $headers.="Content-type: ".$this->type."; charset=".$sc."\r\n";
        $headers.="From: ".$enc_from."\r\n";
        return mail($enc_to,$enc_subject,$enc_body,$headers);
    }
 
    }
 
    $emailgo= new TEmail; // инициализируем супер класс отправки
    $emailgo->from_email= 'dontforget.pro'; // от кого
    $emailgo->from_name= 'Тестовая форма';
    $emailgo->to_email= "myemail@mail.ru";          //$mail; // кому
    $emailgo->to_name= $name;
    $emailgo->subject= $subject; // тема
    $emailgo->body= $message; // сообщение
    $emailgo->send(); // отправляем
 
    $json['error'] = 0; // ошибок не было
 
    echo json_encode($json); // выводим массив ответа
} else { // если массив POST не был передан
    echo 'GET LOST!'; // высылаем
}
 
?>
Заранее спасибо!
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
23.04.2015, 16:56
Ответы с готовыми решениями:

Как отобразить выбранный товар в приходящей на почту заявке?
Доброго времени суток! Проблема в следующем: есть форма заявки, которая привязана к кнопке заказа товара. Можно ли повесить на...

не приходит уведомление о перехрде на 10-ку
Доброго времени суток у моей жены ноут Леново. покупали в ДНС стояла винда, у меня на компе на пиратку активированую активатором пришло в...

не приходит уведомление при отправке комментария
Здравствуйте, проблема в том, что я делала сайт на локальном хосте. Там я где-то нашла код о том, как отправить комментарий на форму...

2
53 / 53 / 22
Регистрация: 31.03.2015
Сообщений: 268
23.04.2015, 19:39
Мне кажется, или у вас немножко странная манера посылать письма. Кто вас так научил? Может быть, конечно, это я один такой, который делает не так, как вы, но вроде бы почти все нормальные люди делают просто:
PHP
1
mail ($to, $subject, $text, $headers);
Безо всяких излишеств. Этого вполне достаточно для отправки письма.

А по делу, к сожалению, ничем помочь не могу.
0
 Аватар для Cyber Freak
0 / 0 / 0
Регистрация: 23.04.2015
Сообщений: 69
23.04.2015, 23:05  [ТС]
Это готовый скрипт, взял на одном сайте.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
23.04.2015, 23:05
Помогаю со студенческими работами здесь

Не приходит уведомление о вручении почты или неправельная маршрутизаци
Всем добрый день. У меня сложилась такая ситуация. Архитектура организации и доменов Лотуса такая. Есть одна организация и множество...

Уведомление на почту
Ребята, кто может подсказать? При регистрации на сайте обычно приходит письмо на почту с подтверждением, можно ли такое же реализовать для...

Уведомление на почту
Доброго времени суток. На фаерволле есть правила, добавляющие в Address List «назойливые» IP адреса которые долбятся на порты… Как...

Уведомление на почту из 1С 8.2
Добрый день ! Есть документ План. В нем мы задаем ФИО сотрудника и план работ и дату выполнения работ. Можно ли сделать так чтобы...

Не приходит письмо на почту
Написал скрип обратной связи. Написан на php, плагинов не использовал &lt;?php if(isset($_POST)) { $name =...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru