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

Запрос в базу данных PDO где многомерный массив ?

29.07.2015, 15:02. Показов 1621. Ответов 18
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Выполняю запрос в бд, где лежит много записей.
PHP
1
2
3
$stmt = $dbh->prepare("SELECT voice_title, voice_user_id FROM voice_content");
    $stmt->execute();
    $voice_content = $stmt->fetch(PDO::FETCH_ASSOC);
А в массив $voice_content попадает только первая запись.
Я предполагал что будет многомерный массив.
что то вроде:

PHP
1
2
3
4
5
6
7
8
9
10
11
12
Arrey
       (
         [0]=>Arrey(
                           [voice_title] => 'Пам пам'
                           [voice_user_id] => '41'
                           )
    
         [1]=>Arrey(
                           [voice_title] => 'ЛАМ ЛЯМ'
                           [voice_user_id] => '42'
                          )
        )
А а получаю только
PHP
1
2
3
4
                   Arrey(
                           [voice_title] => 'Пам пам'
                           [voice_user_id] => '41'
                           )
Сильно не бейте ногами, я сам пытаюсь пописывать на PHP, смотрел статьи по пдо, так там возвращает так как нужно.
Что у меня не так то ?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
29.07.2015, 15:02
Ответы с готовыми решениями:

Как создать запрос PDO для записи данных в базу
Как создать запрос PDO что бы данные записались в базу? Например: Есть таблица пользователей с полями name|lastname|city|godrogden ...

Записать многомерный список в базу данных
Имеется такой двумерный список: cost_data = ,,,] Всего около 2000 элементов. Есть база данных на Mysql , с таблицей COSTS В...

Как создать базу данных посредством PDO?
День добрый! Как создать базу данных посредством PDO?

18
26 / 25 / 3
Регистрация: 22.01.2013
Сообщений: 273
29.07.2015, 15:10
Цитата Сообщение от Rassol2 Посмотреть сообщение
"SELECT voice_title, voice_user_id FROM voice_content"
попробуй добавить имя таблицы и квадратные скобки ... что то вроде...
"SELECT [имя таблицы].[voice_title], [имя таблицы].[voice_user_id] FROM voice_content"
0
3 / 3 / 0
Регистрация: 26.07.2012
Сообщений: 122
29.07.2015, 15:24  [ТС]
Цитата Сообщение от Duzekrutov Посмотреть сообщение
Сообщение от Rassol2
"SELECT voice_title, voice_user_id FROM voice_content"
попробуй добавить имя таблицы и квадратные скобки ... что то вроде...
"SELECT [имя таблицы].[voice_title], [имя таблицы].[voice_user_id] FROM voice_content"
при таком раскладе вообще ничего не возвышается.
print_r($voice_content);
дает белый лист.

Да и не думаю что в синтаксисе SQL вопрос, поскольку аналогичная команда в phpmyadmin возражает таблицу с строками разных записей.
Думаю тут проблема в работе с PDO что то я не указываю.

если сделать вот так.
PHP
1
2
3
$stmt = $dbh->prepare("SELECT voice_title, voice_user_id FROM voice_content");
$stmt->execute();
$stmt->setFetchMode(PDO::FETCH_ASSOC);
А затем
PHP
1
2
3
while($row = $stmt->fetch()){
echo $row['voice_title'];
}
То цикл while вернет все строки. из таблицы.

Но мне хотелось бы иметь многомерный массив.
0
26 / 25 / 3
Регистрация: 22.01.2013
Сообщений: 273
29.07.2015, 15:54
в первом случае ты делаешь...fetch с FETCH_ASSOC
Цитата Сообщение от Rassol2 Посмотреть сообщение
$voice_content = $stmt->fetch(PDO::FETCH_ASSOC);
а тут... просто fetch()
Цитата Сообщение от Rassol2 Посмотреть сообщение
$stmt->fetch())
может в этом...
0
3 / 3 / 0
Регистрация: 26.07.2012
Сообщений: 122
29.07.2015, 16:02  [ТС]
Цитата Сообщение от Duzekrutov Посмотреть сообщение
в первом случае ты делаешь...fetch с FETCH_ASSOC
Сообщение от Rassol2
$voice_content = $stmt->fetch(PDO::FETCH_ASSOC);
а тут... просто fetch()
Сообщение от Rassol2
$stmt->fetch())
может в этом...
нет не в этом.
PDO::FETCH_ASSOC - отвечает за в каком виде вернуть данные. В данном случаи вернуть в ассоциативном массиве.
0
26 / 25 / 3
Регистрация: 22.01.2013
Сообщений: 273
29.07.2015, 19:15
Цитата Сообщение от Rassol2 Посмотреть сообщение
prepare("SELECT voice_title, voice_user_id FROM voice_content");
тогда вместо вышесказанного попробуй..
prepare("SELECT * FROM voice_content");
если все столбцы выдаст - то... что то неправильно в самом запросе...
0
3 / 3 / 0
Регистрация: 26.07.2012
Сообщений: 122
29.07.2015, 19:16  [ТС]
Цитата Сообщение от Duzekrutov Посмотреть сообщение
тогда вместо вышесказанного попробуй..
prepare("SELECT * FROM voice_content");
если все столбцы выдаст - то... что то неправильно в самом запросе...
Уже пробовал.
Это наверное то что я первым пробовал.
0
26 / 25 / 3
Регистрация: 22.01.2013
Сообщений: 273
29.07.2015, 19:25
пробовал и что ?... при select * все работает?
0
3 / 3 / 0
Регистрация: 26.07.2012
Сообщений: 122
29.07.2015, 19:33  [ТС]
Цитата Сообщение от Duzekrutov Посмотреть сообщение
пробовал и что ?... при select * все работает?
конечно же нет.
Если бы работало меня бы тут не было, и это говорилось о том что неправильно составлен запрос.
Что SELECT *
Что SELECT и перечень столбцов
делает тоже самое.

Вы не в ту сторону капаете. Полагаю с PDO вы так же знакомы как и я.

Не знаю почему но PDO не выдает многомерный массив.
На проч.

Хочу услышать, может я в корне не так все делаю, и с ПДО нужно делать по другому ?

Хочу вывести список голосований. Но как его вывести если запрос в таблицу с голосованиями не возвращает все а только 1. А мне нужно все.
0
26 / 25 / 3
Регистрация: 22.01.2013
Сообщений: 273
29.07.2015, 20:31
Скорей всего тогда ощибка на поверхности... Открой официальную доку на php там будут примеры...
Например по php посмотрел - ты делаешь fetch а есть fetchall...и пр...
Вставляй код примеров с офф сайта... с PDO работал много но давно...
0
3 / 3 / 0
Регистрация: 26.07.2012
Сообщений: 122
29.07.2015, 20:34  [ТС]
Цитата Сообщение от Duzekrutov Посмотреть сообщение
Скорей всего тогда ощибка на поверхности... Открой официальную доку на php там будут примеры...
Например по php посмотрел - ты делаешь fetch а есть fetchall...и пр...
Вставляй код примеров с офф сайта... с PDO работал много но давно...
как я уже сказал вы скорее всего не больше моего понимаете в этом.
зачем тогда давать советы ?
fetchall отвечает далеко не за это.
0
26 / 25 / 3
Регистрация: 22.01.2013
Сообщений: 273
29.07.2015, 21:06
Не стоит хамить... Тем более если вы сам такой "специалист" что в такой ерунде разобраться сами не можете...
0
3 / 3 / 0
Регистрация: 26.07.2012
Сообщений: 122
29.07.2015, 21:10  [ТС]
где вам хамят то ?
пожалуйста покиньте эту тему.

Я рас написал.
Вы не в ту сторону капаете. Полагаю с PDO вы так же знакомы как и я.
не хамя.

но вы продолжаете засорять тему советами в стиле палец в потолок, я так и без вас могу делать.
Почему то я не даю такие советы людям.

И я не считаю что вам где то нахамил. Вы уж извините но не выдавайте желаемой за действительное.

Давайте вы покините эту тему если у вас нету решения, а я подожду того что имеет практику в этом вопросе.
А пока что читаю даку.

что в такой ерунде разобраться сами не можете...
а вы я смотру разобрались так что тратите мое время попросту.
0
26 / 25 / 3
Регистрация: 22.01.2013
Сообщений: 273
29.07.2015, 21:56
Хамство - в приклеивании ярлыков знаний и не знаний...
Нашел твою ошибку - она в не знании самого рнр...
Она в третьей строчке кода..
$voice_content = $stmt->fetch(PDO::FETCH_ASSOC);
А надо просто
$stmt->fetch(PDO::FETCH_ASSOC);
Или print_r($cStmt->fetch());

Добавлено через 1 минуту
Ты присваиваешь переменной выборку . Компилятор берет первое же значение и загоняет в переменную
0
3 / 3 / 0
Регистрация: 26.07.2012
Сообщений: 122
29.07.2015, 22:05  [ТС]
Цитата Сообщение от Duzekrutov Посмотреть сообщение
Хамство - в приклеивании ярлыков знаний и не знаний...
Нашел твою ошибку - она в не знании самого рнр...
Она в третьей строчке кода..
$voice_content = $stmt->fetch(PDO::FETCH_ASSOC);
А надо просто
$stmt->fetch(PDO::FETCH_ASSOC);
Или print_r($cStmt->fetch());
Добавлено через 1 минуту
Ты присваиваешь переменной выборку . Компилятор берет первое же значение и загоняет в переменную
Я понимаю что для вас это теперь дело принципа.
Хотя бы тестили то что советуете, раз с ПДО вы тоже на вы.

Ваш предположение, опять ошибочно.
PHP
1
PDOStatement Object ( [queryString] => SELECT voice_title, voice_user_id FROM voice_content)
Почему я прошу вас покинуть тему, вы даете советы, которые сами не понимает.
И не удосуживаетесь проверить.
А я трачу свое время на проверку каждого вашего предположение.

Спасибо вы меня убедили помощи тут не будет.
Пожалуйста закройте тему что бы я не отвлекался на это. Луче буду перечитывать по 100 рас документацию.
0
26 / 25 / 3
Регистрация: 22.01.2013
Сообщений: 273
29.07.2015, 22:07
Слушайте вы редкий экземпляр болвана... И вы меня убедили я покидаю тему
0
3 / 3 / 0
Регистрация: 26.07.2012
Сообщений: 122
29.07.2015, 22:10  [ТС]
Цитата Сообщение от Duzekrutov Посмотреть сообщение
Слушайте вы редкий экземпляр болвана... И вы меня убедили я покидаю тему
благодарю.

Нечего людей тут путать.

Притча.
Тонет человек в море, мужик видит это, только с реагировать, а баба стоящая рядом говорит "Я сама"
Подходит эта женщина к краю моря и начинает орать.
- А вы в сторону берега грипти не пытались ?

Если я тонущий человек то кто вы в этой притче ?
0
26 / 25 / 3
Регистрация: 22.01.2013
Сообщений: 273
29.07.2015, 22:14
Вы тот кому показали решение и как грезти... А вы вместо этого пить воду стали со словами я её счас всю выпью !
Вы будете биться в пень на каждом шагу!! 100 процентов
0
3 / 3 / 0
Регистрация: 26.07.2012
Сообщений: 122
29.07.2015, 22:18  [ТС]
Цитата Сообщение от Duzekrutov Посмотреть сообщение
Вы тот кому показали решение и как грезти... А вы вместо этого пить воду стали со словами я её счас всю выпью !
Вы будете биться в пень на каждом шагу!! 100 процентов
вы вообще то покинули тему придерживайтесь своих слов не заставляйте меня переходит на личность и действительно хамить, я то вашего болвана проглотил. Из вежливости, списал это на необразованность.
Но доношу до сведения мне это не по нраву.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
29.07.2015, 22:18
Помогаю со студенческими работами здесь

Импорт значений из тхт файла в базу данных (pdo)
Добрый день! Столкнулся с такой проблемой: есть тхт файл такого вида: Title: Blazing Saddles Release Year: 1974 Format: VHS ...

Добавление массива в многомерный массив (не элемента в многомерный массив)
Доброго времени суток уважаемые форумчане! Столкнулся с такой проблемой: требуется в многомерный массив добавить другой ассоц. массив...

Запись данных из БД в многомерный массив
Добрый день. При работе с БД возникла небольшая проблема. Нужно данные из БД записать в трехмерный массив для дальнейшего построения...

Добавление данных в многомерный массив
Доброго времени суток. Помогите, пожалуйста, разобраться, а то я совсем запутался. Из БД я получаю n строк с двумя столбцами:...

PDO подготовленные запрос для update данных, не получается с текстом обновить данные
Доброго времени суток, помогите разобраться(довести до ума) с подготовленными запросами для обновления данных в базе. Есть такой запрос: ...


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

Или воспользуйтесь поиском по форуму:
19
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru