Форум программистов, компьютерный форум, киберфорум
jQuery
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.64/11: Рейтинг темы: голосов - 11, средняя оценка - 4.64
 Аватар для The_Host
7 / 7 / 3
Регистрация: 20.08.2016
Сообщений: 188

Отправка и получение данных ajax

23.07.2018, 12:54. Показов 2471. Ответов 23

Студворк — интернет-сервис помощи студентам
Отправляю данные через ajax
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
$.ajax({
                    url: '../send.php',
                    type: 'post',
                    data:{
                        'Weight': FullWeight,
                        'Amount': FullAmount,
                        'From' : from,
                        'To' : to
                    },
                    complete: function(data){
                    $(".alert").css('display', 'block');
                    alert (data);
                }
                });
В php работаю с этими данными и в итоге получаю переменную в числовом виде (например)
PHP
1
$Value = 1000;

Долго пытался разобраться, но не могу понять
Если data возвращает object Object, то как мне обратиться к самой переменной сформированной в php ?
А потом ее просто вывести куда-то
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
23.07.2018, 12:54
Ответы с готовыми решениями:

Ajax отправка-получение
Всем привет!) В общем ребята задача: Заполнил поля. Нажал кнопку. Получил результат. Ошибок консоль не выдает. А результат не...

Ajax отправка данных в бд
Здравствуйте! Помогите пожалуйста, я пытаюсь реализовать отправку в базу данных вводимое пользователем в input без перезагрузки...

Отправка данных, ajax
ситуация такая. Есть переменная на php полученная из БД $id_user = 51; есть следующий скрипт ajax запроса <script> ...

23
15 / 15 / 16
Регистрация: 19.07.2017
Сообщений: 61
25.07.2018, 12:15
The_Host, data.Value ?
0
 Аватар для The_Host
7 / 7 / 3
Регистрация: 20.08.2016
Сообщений: 188
25.07.2018, 12:18  [ТС]
Цитата Сообщение от lemon4er Посмотреть сообщение
data.Value ?
выдает undefined
0
15 / 15 / 16
Регистрация: 19.07.2017
Сообщений: 61
25.07.2018, 12:29
The_Host, напиши не
JavaScript
1
alert (data);
а
JavaScript
1
console.log(data)
и посмотри в браузере в консоле, что приходит в data
0
 Аватар для The_Host
7 / 7 / 3
Регистрация: 20.08.2016
Сообщений: 188
25.07.2018, 16:43  [ТС]
Цитата Сообщение от lemon4er Посмотреть сообщение
и посмотри в браузере в консоле, что приходит в data
Вопрос глупый, но не задать не могу) Куда смотреть?
Ошибок и предупреждений нет
Миниатюры
Отправка и получение данных ajax  
0
15 / 15 / 16
Регистрация: 19.07.2017
Сообщений: 61
25.07.2018, 16:51
The_Host, покажи еще php где ты возвращаешь значение для data
твое значение походу лежит в responseText...)
0
 Аватар для The_Host
7 / 7 / 3
Регистрация: 20.08.2016
Сообщений: 188
25.07.2018, 16:54  [ТС]
Цитата Сообщение от lemon4er Посмотреть сообщение
покажи еще php где ты возвращаешь значение для data
твое значение походу лежит в responseText...)
Сам код работает как мне надо на данный момент
PHP
1
2
3
4
5
6
7
8
9
10
$query ="SELECT * FROM FromTo";
$result = mysqli_query($link, $query) or die("Ошибка " . mysqli_error($link)); 
 
$row = mysqli_fetch_assoc($result);
$value = $row["1500"];
 
mysqli_close($link);
 
 
echo $value;
И да, действительно то что я хочу увидеть лежит в responseText, но ка сделать чтобы он выдавал мне число которое в body ?
0
15 / 15 / 16
Регистрация: 19.07.2017
Сообщений: 61
25.07.2018, 17:03
The_Host, я с php мало знаком...) но по моему, если ты напишешь вместо
PHP
1
echo $value;
PHP
1
echo 100;
например, то тебе должно придти в data число 100
0
 Аватар для The_Host
7 / 7 / 3
Регистрация: 20.08.2016
Сообщений: 188
25.07.2018, 17:06  [ТС]
lemon4er, оно то придет, но ведь мне надо переменную получить, она будет изменяться в зависимости от условий в php
0
15 / 15 / 16
Регистрация: 19.07.2017
Сообщений: 61
25.07.2018, 17:09
The_Host, но у тебя value - это не переменная, а целая страница, как я понял
0
 Аватар для The_Host
7 / 7 / 3
Регистрация: 20.08.2016
Сообщений: 188
26.07.2018, 13:25  [ТС]
Хотелось бы все же узнать почему мне php возвращает object object
В консоли если посмотреть то в параметре responseText отображается нужное мне значение

Так как же просто напросто вывести его через alert?
0
15 / 15 / 16
Регистрация: 19.07.2017
Сообщений: 61
26.07.2018, 13:36
The_Host, что такое
PHP
1
$row["1500"];
?
0
 Аватар для The_Host
7 / 7 / 3
Регистрация: 20.08.2016
Сообщений: 188
26.07.2018, 14:01  [ТС]
lemon4er, Так назван столбец в таблице
$value берез из него число
просто для примера я беру первую строку таблицы, потом все будет в цикле перебираться и сравниваться с теми данными что я передаю через ajax
0
 Аватар для fanatikus
1932 / 1523 / 703
Регистрация: 17.11.2012
Сообщений: 6,585
26.07.2018, 14:19
dataType: 'json'

<?php
$json = array('value'=>'111');
echo json_encode($json);
?>

alert(data.value);
0
 Аватар для Зверушь
461 / 369 / 94
Регистрация: 01.05.2010
Сообщений: 1,761
26.07.2018, 14:22
У вас почему-то еще и разметка выводится... Покажите полностью php, где идет обработка запроса ajax. Функции php, на которые идет обращение через ajax не должны возвращать никакую разметку, разве что конечно, если вы не формируете при помощи них html.
0
 Аватар для The_Host
7 / 7 / 3
Регистрация: 20.08.2016
Сообщений: 188
26.07.2018, 14:55  [ТС]
fanatikus, alert выводит undefined
консоль выводит responseText:"{"value":"111"}"

Зверушь,
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?php
$From = $_POST['From'];
$To = $_POST['To'];
$Weight = $_POST['Weight'];
$Amount = $_POST['Amount'];
 
$link = mysqli_connect('localhost', 'root','', 'miggruz') 
    or die("Ошибка " . mysqli_error($link));
 
// выполняем операции с базой данных
$query ="SELECT * FROM FromTo";
$result = mysqli_query($link, $query) or die("Ошибка " . mysqli_error($link)); 
 
$row = mysqli_fetch_assoc($result);
$value = $row["1500"];
 
mysqli_close($link);
 
echo $value;
?>
Выводил всю страницу потому что я изначально бытался победить кодировку вставив php код в html разметку с параметром <meta charset="UTF-8">

сейчас код страницы не выводит в поле responseText:. Теперь там то что мне нужно, но в любом случает как же тогда вернуть из php само значение для дальнейшего использования??
0
 Аватар для fanatikus
1932 / 1523 / 703
Регистрация: 17.11.2012
Сообщений: 6,585
26.07.2018, 14:59
Цитата Сообщение от The_Host Посмотреть сообщение
alert выводит undefined
dataType, прописали?

Добавлено через 1 минуту
JavaScript
1
2
3
4
$.ajax({
    url: '../send.php',
    type: 'post',
    dataType: 'json',.............
0
 Аватар для The_Host
7 / 7 / 3
Регистрация: 20.08.2016
Сообщений: 188
26.07.2018, 15:00  [ТС]
Цитата Сообщение от fanatikus Посмотреть сообщение
dataType, прописали?
На данный момент ajax выглядит так, может я что-то изначально не так делаю?
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
$.ajax({
                    url: '../send.php',
                    type: 'post',
                    dataType: 'json',
                    data:{
                        'Weight': FullWeight,
                        'Amount': FullAmount,
                        'From' : from,
                        'To' : to
                    },
                    complete: function(data){
                        alert(data.value);
                    }
                });
0
 Аватар для Зверушь
461 / 369 / 94
Регистрация: 01.05.2010
Сообщений: 1,761
26.07.2018, 16:59
JavaScript
1
2
3
4
5
6
complete: function (data) {
    if (typeof(data) == 'string') {
        data = $.parseJSON(data);
        alert(data.value);
    }
}
The_Host, вы уверены, что показали актуальное содержимое php? При echo $value по идее не может получиться {"value":"111"}

Добавлено через 13 минут
Вообще, работая с ajax функцией php я всегда придерживаюсь следующих правил:
1. Все данные сохраняются в массив, который при выводе преобразовывается в json.
2. После вывода всегда завершаю выполнение при помощи exit(). Что-бы случайно не вывести что-то еще.
3. Явно передаю заголовок типа содержимого.

Выглядит это все примерно так:
PHP
1
2
3
4
5
6
7
8
9
10
function my_ajax_handler() {
    $data = [
        'test_var_1' => 111,
        'test_var_2' => 'some string var'
    ]
 
    header('Content-type: Application/json');
    echo json_encode($data);
    exit();
}
0
 Аватар для The_Host
7 / 7 / 3
Регистрация: 20.08.2016
Сообщений: 188
27.07.2018, 08:51  [ТС]
Цитата Сообщение от Зверушь Посмотреть сообщение
вы уверены, что показали актуальное содержимое php? При echo $value по идее не может получиться {"value":"111"}
Вот мой код php
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
$From = $_POST['From'];
$To = $_POST['To'];
$Weight = $_POST['Weight'];
$Amount = $_POST['Amount'];
 
$link = mysqli_connect('localhost', 'root','', 'miggruz') 
    or die("Ошибка " . mysqli_error($link));
 
// выполняем операции с базой данных
$query ="SELECT * FROM FromTo";
$result = mysqli_query($link, $query) or die("Ошибка " . mysqli_error($link)); 
 
$row = mysqli_fetch_assoc($result);
$value = $row["1500"];
 
mysqli_close($link);
echo $value;
?>
Цитата Сообщение от Зверушь Посмотреть сообщение
complete: function (data) {
if (typeof(data) == 'string') {
data = $.parseJSON(data);
alert(data.value);
}
}
У меня тип data это object
Цитата Сообщение от Зверушь Посмотреть сообщение
function my_ajax_handler() {
$data = [
'test_var_1' => 111,
'test_var_2' => 'some string var'
]
header('Content-type: Application/json');
echo json_encode($data);
exit();
}
Мне вот этот код не совсем понятен
Это в php файле должно быть?
А если мне нужно только одну переменную вернуть, мне ее тоже в массив ставить?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
27.07.2018, 08:51
Помогаю со студенческими работами здесь

AJAX + Jquery, отправка данных
Всем привет. Столкнулся с такой проблемой как новичок. Пытаюсь реализовать следующую задачу: Есть калькулятор, который считает...

Отправка данных из php в ajax
На странице есть форма регистрации, при клике на кнопку данные с помощью ajax отправляются в php. PHP делает запись в БД и отправляет...

Отправка данных post ajax
Есть форма входа &lt;form name=&quot;loginfrm&quot; method=&quot;post&quot; action=&quot;/login.html&quot; style=&quot;margin: 0px; padding: 0px;&quot; &gt; &lt;ul...

Отправка данных ajax+jQuery
Используя ajax, я хотел отправить некоторые данные, но до php кода они не доходят. Вот код: $('#5').click(function( send()){ { ...

Jquery+ajax отправка данных формы
Здравствуйте. Да, и по форумам лазил, и в инете рылся, но проблему решить не смог. Рассчитываю на вашу помощь. При нажатии на ссылку...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru