Форум программистов, компьютерный форум, киберфорум
PHP: базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
 Аватар для KVESTOR
15 / 15 / 4
Регистрация: 21.04.2014
Сообщений: 179

Выборка данных из строк

18.11.2018, 16:53. Показов 1554. Ответов 11

Студворк — интернет-сервис помощи студентам
Не пойму как работает вывод данных из столбца rashod_minut.

Запрос SQL из phpMyAdmin:
SQL
1
SELECT rashod_minut FROM costs WHERE id_abonenta=2
Скриншот результата SQL во вложениях.

Но почему то массив выводится не так как я задумывал.

PHP код:
PHP
1
2
3
$msqlq_costs = mysql_query("SELECT rashod_minut FROM costs WHERE id_abonenta='$user_id'");
$msqls_costs = mysql_fetch_row($msqlq_costs);
var_dump($msqls_costs);
$user_id равен 2.

Результат var_dump:
PHP
1
2
3
array(1) {
[0]=> string(2) "60"
}
Что я делаю не так? Почему элемент в массиве всего один?
Изображения
 
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
18.11.2018, 16:53
Ответы с готовыми решениями:

Выборка с использованием данных из других строк
Добрый вечер. Подскажите, пожалуйста, как можно решить следующую задачу. Есть, собственно, база. В ней есть записи такого типа: ...

Выборка строк из базы данных андроид
есть база данных по зарплат по месяцам, помогите сформировать запрос что бы вытащить от туда все зарплаты в определенном месяце тут...

Выборка, фильтрация строк из таблиц базы данных в делфи 7
Доброе время суток уважаемые программисты! надеюсь на вашу мудрость и помощь: Суть в том что я начинающий программист самоучка и взялся...

11
 Аватар для KVESTOR
15 / 15 / 4
Регистрация: 21.04.2014
Сообщений: 179
18.11.2018, 20:00  [ТС]
Должно же выводится 60 и 30...

Добавлено через 3 часа 0 минут
А, всё, разобрался сам, использовал код:
PHP
1
2
3
while ($row = mysql_fetch_array($msqlq_costs)){
echo $row['rashod_minut'] . "<br>";
}
0
Эксперт PHP
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
18.11.2018, 20:01
PHP
1
2
3
4
$msqlq_costs = mysql_query("SELECT rashod_minut FROM costs WHERE id_abonenta='$user_id'");
while ($row = mysql_fetch_row($msqlq_costs)) {
    var_dump($row);
}
0
 Аватар для KVESTOR
15 / 15 / 4
Регистрация: 21.04.2014
Сообщений: 179
18.11.2018, 20:02  [ТС]
Пф.
0
 Аватар для KVESTOR
15 / 15 / 4
Регистрация: 21.04.2014
Сообщений: 179
19.11.2018, 09:07  [ТС]
Теперь уже другая проблема:
Как сложить выбранные числа и вывести результат?
0
 Аватар для arava
340 / 135 / 70
Регистрация: 30.06.2014
Сообщений: 717
19.11.2018, 10:14
KVESTOR, начнем с функции mysql_fetch_row :
mysql_fetch_row — обрабатывает один ряд результата, на который ссылается переданный указатель ;

Jewbacabra, уверены что это сработает ? :
PHP
1
2
3
while ($row = mysql_fetch_row($msqlq_costs)) {
    var_dump($row);
}
по этому да, нужно как минимум использовать функцию mysql_fetch_array()

Цитата Сообщение от KVESTOR Посмотреть сообщение
Как сложить выбранные числа и вывести результат?
PHP
1
2
3
4
5
$msqlq_costs = mysql_query("SELECT SUM(rashod_minut) AS sum FROM costs WHERE id_abonenta='$user_id'");
 
while ($row = mysql_fetch_row($msqlq_costs)) {   // mysql_fetch_row уместно
   echo $row['sum'] . "<br>";
}
или сделать вычисления на стороне PHP...
0
 Аватар для KVESTOR
15 / 15 / 4
Регистрация: 21.04.2014
Сообщений: 179
19.11.2018, 10:31  [ТС]
Разобрался сам. Взял инфу отсюда:
Запрос с объединением строк и суммированием по столбцу
0
 Аватар для arava
340 / 135 / 70
Регистрация: 30.06.2014
Сообщений: 717
19.11.2018, 10:58
KVESTOR, хочу обратить Ваше внимание что в теме приведенной выше есть такой запрос :

SQL
1
2
3
4
5
6
SELECT id_task,TIME 
FROM activity 
WHERE id_user = '2' 
          AND DATE < '1321613500' 
          AND DATE > '1321613490'
GROUP BY id_task;
он не суммирует поле TIME, а выводит первое значение из всех доступных...
0
 Аватар для KVESTOR
15 / 15 / 4
Регистрация: 21.04.2014
Сообщений: 179
19.11.2018, 11:17  [ТС]
Там выше есть код с SUM(TIME).
0
Эксперт PHP
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
19.11.2018, 12:15
arava, уверен, единственное отличие mysql_fetch_row от mysql_fetch_array - первая возвращает строки в виде массива с числовыми индексами, а результат второй зависит от необязательного второгр параметра.
А зачем запрос, возвращающий максимум 1 строку оборачивать в цикл?
0
 Аватар для arava
340 / 135 / 70
Регистрация: 30.06.2014
Сообщений: 717
19.11.2018, 13:13
Цитата Сообщение от Jewbacabra Посмотреть сообщение
А зачем запрос, возвращающий максимум 1 строку оборачивать в цикл?
это да, цикл там не нужен


Цитата Сообщение от Jewbacabra Посмотреть сообщение
единственное отличие mysql_fetch_row от mysql_fetch_array - первая возвращает строки в виде массива с числовыми индексами
подождите, в документации ведь сказано :
mysql_fetch_row — Обрабатывает ряд результата запроса и возвращает массив с числовыми индексами

т.е. всегда будет первая строка выборки, аналогично как с LIMIT 1;


P.S. в доке сказано так :
mysql_fetch_row() обрабатывает один ряд результата, на который ссылается переданный указатель.
0
Эксперт PHP
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
19.11.2018, 13:55
arava,
Возвращает массив с числовыми индексами, содержащий данные обработанного ряда, и сдвигает внутренний указатель результата вперед.
https://secure.php.net/manual/... ch-row.php
Обрабатывает 1 ряд имеется ввиду каждый вызов этой функции
PS. Там еще ошибка - использован не числовой индекс.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
19.11.2018, 13:55
Помогаю со студенческими работами здесь

Выборка задолженностей по таблице (выборка строк с пустыми ячейкам даты оплаты) для отчета
Имеется таблица учета продаж, в ней нужно сделать выборку по дате оплаты для ежемесячного отчета. То есть, вначале ввести дату начала...

Выборка данных из нескольких таблиц. Аналитическая выборка данных
16 Для каждого отдела выбрать отношение зарплаты и комиссионных сотрудников отдела к объему продаж отдела. 17 *Выбрать список штатов в...

Выборка строк и бд
Всем привет помогите есть бд CREATE TABLE `stena` ( `id` int(9) NOT NULL AUTO_INCREMENT, `author` varchar(15) NOT NULL DEFAULT...

Выборка строк из БД
Привет Подскажите,нужно выбрать из БД строки,в которых &quot;стоимость&quot; попадает в определенный диапазон.Верхняя и нижняя планка диапазона...

Выборка значений из строк
Приветствую друзья. Есть 2 строки: 1) &lt;b style=&quot;font-weight: bold;&quot;&gt;12.01.2016 0:35: &lt;a target=_blank ...


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

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
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