Форум программистов, компьютерный форум, киберфорум
Наши страницы
PHP для начинающих
Войти
Регистрация
Восстановить пароль
 
roma88gruzd88
6 / 6 / 1
Регистрация: 28.04.2013
Сообщений: 103
#1

Ajax + php - PHP

22.08.2014, 14:43. Просмотров 370. Ответов 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 кнопки
Как значение radio передать я разобрался, а вот как еще переменную со страницы...

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

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

PHP,Ajax
Ребят вообщем начал изучать Ajax, возможно я полностью не понимаю, что это, а...

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

PHP+AJAX
Доброе время суток, есть такая форма... &lt;form method=&quot;POST&quot; action=&quot;&quot;...

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

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

Php + ajax
Здравствуйте. Пытаюсь отправить форму, добавить данные в бд и сделать обработку...

php и ajax
Привет, друзья! Ребята, в общем, возник такой вопрос: предположим, есть...

Ajax + php
Выдает ошибку. Что я сделал не так? &lt;!DOCTYPE html&gt; &lt;html...


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

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

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