Форум программистов, компьютерный форум, киберфорум
WordPress
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
0 / 0 / 0
Регистрация: 15.10.2015
Сообщений: 21

Форма обратной связи

19.01.2017, 12:05. Показов 832. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго дня, не могу настроить отправку заявок с сайта. У меня есть сайт komputernaya.xyz там данная форма работает прекрасно, хочу такую же на другой сайт. Беру саму форму
HTML5
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
<form method="post">
        <ul>
            <li>
                <input type="text" class="comments-field inputs-class" name="name" id="name" title="Имя :" value="Имя :" />
                <span id="errorName" class="formError"></span>
            </li>
            <li>
                <input type="text" class="comments-field inputs-class margin-right-zero" name="email" id="email" title="Email :" value="Email :" />
                <span id="errorEmail" class="formError"></span>
            </li>
                    <li>
                <input type="text" class="comments-field inputs-class margin-top-minus-three" name="phone" id="phone" title="Телефон :" value="Телефон :" />
                <span id="errorName" class="formError"></span>
            </li>
            <li>
                <input type="text" class="comments-field inputs-class margin-top-minus-three margin-right-zero" name="company" id="company" title="Адрес :" value="Адрес :"/>
                <span id="errorEmail" class="formError"></span>
            </li>
            <li>
                <textarea class="comments-field inputs-class width-ninety-six margin-top-zero" title="Ваше сообщение:" name="message" id="message" cols="100%" rows="10" tabindex="4">Ваше сообщение:</textarea>
                <span id="errorMessage" class="formError"></span>
            </li>
                                 <li class="inputs-class-num" >
                <div id="math-number" class="noSelect math-number-class"></div><input type="text" id="input-number" class="math-number-input" />
                <div id="num-info" class="num-info-class">Вы человек?</div>
            </li>
                        <li>
                <input type="submit" value="Отправить" id="submit" class="comments-submit margin-right-zero"  />
            </li>
            <div class="clearFix"></div>
            <span id="formProgress" class="formProgress"></span>
 
        </ul>
    </form>
, стили и скрипт
JavaScript
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
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
<script type="text/javascript">
jQuery(document).ready(function(){
    
        var firstNum = Math.floor(Math.random() * 18);
        var secondNum = Math.floor(Math.random() * 18);
        var numAnswer;
        var rand = Math.floor(Math.random()*2);
        switch(rand){
            case 0:
            jQuery("#math-number").html(firstNum+" + "+secondNum+" = ");
            numAnswer = firstNum + secondNum;
            break;
            
            case 1:
            if(firstNum >= secondNum){
                jQuery("#math-number").html(firstNum+" - "+secondNum+" = ");
                numAnswer = firstNum - secondNum;
            }else{
                jQuery("#math-number").html(secondNum+" - "+firstNum+" = ");
                numAnswer = secondNum - firstNum;
            }
            break;
            
            case 2:
            if(firstNum.toString().length == 1 || secondNum.toString().length == 1){
                jQuery("#math-number").html(firstNum+" * "+secondNum+" = ");
                numAnswer = firstNum * secondNum;
            }else{
                jQuery("#math-number").html(firstNum+" + "+secondNum+" = ");
                numAnswer = firstNum + secondNum;
            }
            break;
        }
 
 
    jQuery('#contactForm #submit').click(function() {
        // Fade in the progress bar
        jQuery('#contactForm #formProgress').hide();
        jQuery('#contactForm #formProgress').html('<img src="http://komputernaya.xyz/wp-content/themes/icemag/images/ajax-loader.gif" /> Отправка&hellip;');
        jQuery('#contactForm #formProgress').fadeIn();
        
        // Disable the submit button
        jQuery('#contactForm #submit').attr("disabled", "disabled");
        
        
        // Clear and hide any error messages
        jQuery('#contactForm .formError').html('');
        
        // Set temaprary variables for the script
        var isFocus=0;
        var isError=0;
        
        // Get the data from the form
        var name=jQuery('#contactForm #name').val();
        var email=jQuery('#contactForm #email').val();
        var phone=jQuery('#contactForm #phone').val();
        var company=jQuery('#contactForm #company').val();
        var message=jQuery('#contactForm #message').val();
        
        // Validate the data
        if(name=='' || name== jQuery("#contactForm #name").attr('title')) {
            jQuery('#contactForm #name').val('Обязательное поле "Имя".');
            jQuery('#contactForm #name').addClass("box-shadow-dark");
            isFocus=1;
            isError=1;
        }
        if(jQuery("#input-number").val() != numAnswer){
            jQuery("#num-info").html("Не верно");
            jQuery("#input-number").parent().addClass("box-shadow-dark");
            isError=1;
        }
        if(email=='' || email== jQuery("#contactForm #email").attr('title') || email == "Неверный email." ) {
            jQuery('#contactForm #email').val('Обязательное поле "email".');
            jQuery('#contactForm #email').addClass("box-shadow-dark");
            isFocus=1;
            isError=1;
        } else {
            var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
            if(reg.test(email)==false) {
                jQuery('#contactForm #email').val('Неверный email.');
                if(isFocus==0) {
                    jQuery('#contactForm #email').addClass("box-shadow-dark");;
                    isFocus=1;
                }
                isError=1;
            }
        }
        if(message=='' || message== jQuery("#contactForm #message").attr('title')) {
            jQuery('#contactForm #message').val('Напишите что-нибудь.');
            jQuery('#contactForm #message').addClass("box-shadow-dark");;
            isFocus=1;
            isError=1;
        }
        // Terminate the script if an error is found
        if(isError==1) {
            jQuery('#contactForm #formProgress').html('');
            jQuery('#contactForm #formProgress').hide();
            
            // Activate the submit button
            jQuery('#contactForm #submit').removeAttr("disabled");
            return false;
        }
        
        jQuery.ajaxSetup ({
            cache: false
        });
        var user = "89296381132@mail.ru";
        var dataString = 'name='+ name + '&email=' + email + '&phone=' + phone + '&company=' + company + '&message=' + message +'&user='+user;  
        jQuery.ajax({
            type: "POST",
            url: "http://komputernaya.xyz/wp-admin/admin-ajax.php",
            data: "action=contact_forum&"+dataString,
            success: function(msg) {
                
                //alert(msg);
                // Check to see if the mail was successfully sent
                if(msg=='Mail sent') {
                    // Update the progress bar
                    jQuery('#contactForm #formProgress').html('<img src="http://komputernaya.xyz/wp-content/themes/icemag/images/ajax-complete.gif" /> Сообщение отправлено.');
                    
                    // Clear the subject field and message textbox
                    jQuery('#contactForm #subject').val('');
                    jQuery('#contactForm #message').val('');
                } else {
                    jQuery('#contactForm #formProgress').html('There was an error sending your email. Please try again.');
                    //alert();
                }
                
                // Activate the submit button
                jQuery('#contactForm #submit').removeAttr("disabled");
            },
            error: function(ob,errStr) {
                jQuery('#contactForm #formProgress').html('There was an error sending your email. Please try again.');
                //alert('');
                
                // Activate the submit button
                jQuery('#contactForm #submit').removeAttr("disabled");
            }
        });
        
        return false;
    });
    
    
    jQuery('.comments-field').each(
        function(){
            jQuery(this).live('focus', function() {
                if ( jQuery(this).val() == jQuery(this).attr('title') || jQuery(this).val() == "This is a required field." || jQuery(this).val() == "Invalid email address.") jQuery(this).val('');
                jQuery(this).addClass("box-shadow-dark");
            });
            jQuery(this).live('blur', function() {
                if ( jQuery(this).val() == '' ) jQuery(this).val(jQuery(this).attr('title'));
                jQuery(this).removeClass("box-shadow-dark");
            });
        }
    );
 
    
});
</script>
проверки корректности заполнения, который после проверки все это дело отправляет на admin-ajax.php(он одинаков на обоих сайтах). Еще каким то боком в functions.php есть кусок кода
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
function ajax_contact() {
    if(empty($_POST['name']) || empty($_POST['email']) || empty($_POST['company']) || empty($_POST['phone']) || empty($_POST['message']) || empty($_POST['user'])) {
        die('Error: Missing variables');
    }
    
    $name=$_POST['name'];
    $email=$_POST['email'];
    $subject=$_POST['subject'];
    $message=$_POST['message'];
    $phone=$_POST['phone'];
    $company=$_POST['company'];
    
    $to=$_POST['user'];
    
    $headers = 'From: '.$email."\r\n" .
        'Reply-To: '.$email."\r\n" .
        'X-Mailer: PHP/' . phpversion();
    $subject = $subject;
    $body='Сообщение с сайта komp.xyz.'."\n\n";
    $body.='Name: '.$name."\n";
    $body.='Email: '.$email."\n";
    $body.='Phone: '.$phone."\n";
    $body.='Adress: '.$company."\n";
    $body.='Message: '.$message."\n";
        
    if(wp_mail($to, 'A new Email', $body)) {
        die('Mail sent');
    } else {
        die('Error: Mail failed');
    }
}
который собирает все в кучу и отправляет. Все это я перенес на новый сайт, урлы естественно поменял, но почему то не работает. Помогите пожалуйста с этим разобраться. Может еще что то нужно сделать или скопировать с сайта.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
19.01.2017, 12:05
Ответы с готовыми решениями:

Форма обратной связи
Простой шабл, без админки, чистый html и css, воткнул форму на php, не работает,помогите) буду признателен seolproduct.ru

Форма обратной связи
Добрый день форумчане, в теме для ВП была форма обратной связи, скрин ниже. Настроил почтовый сервер на хостинге, настроил все в самом ВП,...

Форма обратной связи
Все привет. Решил сделать свою форму обратной связи, но при отправки консоль ругается POST http://***/send.php 500 (Internal Server Error) ...

2
 Аватар для edward_freedom
1569 / 1448 / 303
Регистрация: 01.10.2011
Сообщений: 2,636
19.01.2017, 13:15
killcomp, чего то не работает, это не программиста ответ. Включи отображение ошибок и смотри в чем проблема
0
0 / 0 / 0
Регистрация: 15.10.2015
Сообщений: 21
19.01.2017, 14:32  [ТС]
Я не программист. Где включить? В логи сервера говорят что данные передаются на admin-ajax и все. На хостинге никаких ошибок нет. Тестовый mail.php почту отправляет, не доходит инфа до functions.php походу дела.

Добавлено через 34 минуты
В мозилле в инструментах разработчика во вкладке "сеть" все ОК, если сравнивать с сайтом откуда беру форму, все совпадает, кроме вкладки "Куки" в новом сайте их нет.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
19.01.2017, 14:32
Помогаю со студенческими работами здесь

Форма обратной связи, fancybox
Всем привет Попросили помочь разобраться в непонятной проблеме на сайте. Суть следующая. По нажатию на ссылку открывается форма...

Собственная форма обратной связи
Добрый день! У меня есть сайт на WP, и есть созданная мной форма обратной связи состоящая из 4 файлов. Можно ли как-то сделать не...

Форма обратной связи не оправляет письма на почту
У меня вопрос.Файлы php загружаются, но форма обратной связи почему то не оправляет письма на почту.Вот код: &lt;style...

Форма обратной связи с идентификатором и статусом обращения
Здравствуйте, посоветуйте как можно реализовать следующий функционал. Нужна форма обратной связи со стандартными позициями (здесь...

Не работает форма обратной связи - ошибка 503
Помогите, при попытке отправить емейл с формы обратной связи выдает такую ​​ошибку: Warning: mail() : SMTP server response: 503 This...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru