Форум программистов, компьютерный форум, киберфорум
Наши страницы

PHP для начинающих

Войти
Регистрация
Восстановить пароль
 
roma88gruzd88
6 / 6 / 1
Регистрация: 28.04.2013
Сообщений: 103
#1

Ajax + php - PHP

22.08.2014, 14:43. Просмотров 361. Ответов 0
Метки нет (Все метки)

Здравствуйте.
Предупреждаю сразу что сталкиваюсь с таким впервые и знаний нет.
НО срочно нужна помощь.
Что имеем.
1. Форма для отправки заказа на почту.


2. Непонятный скрипт для этого)
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
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
function __(data){
    if( typeof( console ) != 'undefined' ){
        console.log(data);
    }
}
 
//
// LeadiaForm Class
//
 
var LeadiaForm = function(params){
 
    var root = this;
 
    var errorCallback = false;
    var successCallback = false;
 
    var submitUrl = false;
 
    this.data = {};
 
    //
    // Constructor
    //
 
    this.init = function(params){
 
        root.submitUrl = params['url'];
        root.successCallback = params['success'];
        root.errorCallback = params['error'];
        root.callbacks = params['callbacks'];
 
        //root.data['question'] = '';
 
        // Triggered on submiting a form, may be a part of a form
 
        jQuery('[data-form]').submit(function(event){
            event.preventDefault();
            root.post(jQuery(this));
        });
 
        // Remove error class from modified input
 
        jQuery('[data-form-field]').change(function(){
            jQuery(this).removeClass('error');
        });
 
        // Go to step
 
        jQuery('[data-goto-step]').click(function(){
            var step = jQuery(this).data('goto-step');
            root.goto(step);
        });
 
        jQuery('[data-form-submit]').removeAttr('disabled');
 
       
    }
 
    //
    // Calling constructor
    //
 
    this.init(params);
 
    //
    // Validate Form
    //
 
    this.post = function(form){
 
        var fields = form.find('[data-form-field]');
        var nextStep = form.data('next-step');
        var error = false;
 
        fields.each(function(){
 
            var field = jQuery(this);
            var fieldName = field.data('form-field');
            var fieldVal = field.val();
 
            if(typeof(root.data[fieldName]) == 'undefined'){
 
                if(fieldVal.length){ // If valid field
 
                    root.data[fieldName] = fieldVal;
 
                    var field_desc = field.data('form-field-desc');
                    if(typeof(field_desc) != 'undefined'){
                        root.data['question'] += ' ' + field_desc + ': ' + fieldVal + ' ';
                    }
 
 
                }else{
                    if( field.data('necessary') ){
                        error = true;
                        field.addClass('error');
                    }
                }
            }
 
 
        });
 
        // Going to the next step
 
        if( !error ){
 
            try {
                var target = form.data('target');
                yaCounter22529122.reachGoal(target);
                console.log('Target hit: '+target);
            } catch (e) {
            }
 
            try {
                var callback = form.data('callback');
                console.log('Callback: '+callback);
                root.callbacks[callback]();
            } catch (e) {
            }
 
            // If this is the last step, send the lead
 
            if( form.data('send-lead') ){
 
                // Prepare form data
 
                var additional_fields = ['userid', 'subaccount', 'client_ip', 'template', 'product'];
 
                for( field in additional_fields ){
                    var field_val = jQuery('body').data(field)
                    if( typeof( field_val ) != 'undefined' && field_val.length > 0 ){
                        root.data[field] = field_val;
                    }
                }
 
                if(jQuery('body').data('user-id'))
                    root.data['userid'] = jQuery('body').data('user-id');
                if(jQuery('body').data('subaccount'))
                    root.data['subaccount'] = jQuery('body').data('subaccount');
                if(jQuery('body').data('client-ip'))
                    root.data['client_ip'] = jQuery('body').data('client-ip');
 
                //root.data['userid'] = jQuery('body').data('user-id');
                //root.data['subaccount'] = jQuery('body').data('subaccount');
                //root.data['client_ip'] = jQuery('body').data('client_ip');
                //root.data['template'] = jQuery('body').data('template');
                //root.data['product'] = jQuery('body').data('product');
 
                root.send();
 
                jQuery('[data-form-submit]').attr('disabled', 'disabled');
 
            }else{
                root.goto(nextStep); // Go to next step
            }
 
        }
 
        return error;
 
    }
 
    // Send Lead
 
    this.send = function(){
 
        __(root.data);
        jQuery.ajax({
            url: root.submitUrl,
            data: root.data,
            type: 'post',
            success: root.successCallback
        });
    }
 
    // Go To Step
 
    this.goto = function(step){
        jQuery('.step').removeClass('active');
        jQuery('[data-step="'+step+'"]').addClass('active');
        if (step==='finish') window.location.replace(thank_you_url);
    }
}
3. Ввожу в форму данные и нажимаю отправить

4. Что выводит консоль гуглхрома
XML
1
Object {question: "123123", first_last_name: "123123", phone: "123123", region: "123123", email: "123123"}

Вопрос что нужно прописать в lead.php чтобы Object {question: "123123", first_last_name: "123123", phone: "123123", region: "123123", email: "123123"} передать в php файл для последущей отправки на почту?


Заранее всем спасибо)

Все не надо сделал сам)

Добавлено через 1 час 18 минут
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
$header.="Content-type: text/plain; charset=\"utf-8\"";
 
$question = $_POST["question"];
$first_last_name = $_POST["first_last_name"];
$phone = $_POST["phone"];
$region = $_POST["region"];
$email = $_POST["email"];
 
if(!isset($hasError)) {
    $emailTo = 'Сюда введите Ваш email'; //Сюда введите Ваш email
    $subject = "Тема письма";
    $body = "Имя: $first_last_name\n\nГород: $region\n\nТелефон: $phone\n\nE-mail: $email\n\nВопрос: $question";
 
    mail($emailTo, $subject, $body, 'Content-type: text/plain; charset=utf-8' . "\r\n" . 'From: Заявка <'.$emailTo.'>' . "\r\n" . 'Reply-To: ' . $email);
    $emailSent = true;
} else {
    echo ("Ошибка");
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.08.2014, 14:43
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Ajax + php (PHP):

Через ajax в url:'ajax.php', нужно передать одну переменную, и значение radio кнопки - PHP
Как значение radio передать я разобрался, а вот как еще переменную со страницы кинуть в url: ajax.php Всем спасибо

PHP с ajax, или PHP и замена кода - PHP
Всем привет, делаю себе не большой движок, для удобства редактирования своего лендинга. Я использую шаблонизатор smarty, и решил сделать...

PHP скрипт -> Json -> выбор пользователя -> AJAX -> первоначальный PHP скрипт - PHP
Доброго времени суток! Я новичек вэб программировании, так что прошу строго не судить(в гугле ответа не нашел). Есть задача: ...

PHP+AJAX - PHP
Доброе время суток, есть такая форма... &lt;form method=&quot;POST&quot; action=&quot;&quot; name=&quot;form-start&quot;&gt; &lt;input type=&quot;text&quot; value=&quot;0&quot; name=&quot;1amo&quot;...

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

PHP и Ajax - PHP
Как сделать, что бы ответ введённый ответ подгрузился? Никак не получается &lt;!DOCTYPE html&gt; &lt;html&gt; &lt;head&gt; &lt;meta...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.08.2014, 14:43
Привет! Вот еще темы с ответами:

PHP+AJAX - PHP
Здравствуйте.Хотел воплотить свою задумку,но мне нужна помощь сдешних профессионалов. У меня есть php файл,в нем храняться баны...

PHP and AJAX - PHP
Здравствуйте, как сделать единую точку входа как в вк то есть вот так: (Имею минимальные знания в PHP, JacaScript)

php и ajax - PHP
Привет, друзья! Ребята, в общем, возник такой вопрос: предположим, есть такая простенькая страничка: &lt;html&gt; &lt;script...

PHP + Ajax - PHP
Я хочу чтобы выводилась сума. Где здесь ошибка? Это 1 часть файла f1.php: &lt;?php if ($_SERVER == &quot;POST&quot;){ $q = $_POST; $w...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.