|
3 / 3 / 1
Регистрация: 22.10.2013
Сообщений: 185
|
|
Бесконечный цикл или как?17.06.2017, 21:54. Показов 2405. Ответов 11
Метки нет (Все метки)
Товарищи, подскажите, как лучше реализовать. К примеру есть таблица
`table` id_a | id_b 1 | 0 2 | 1 3 | 2 4 | 1 5 | 3 6 | 0 Как мне вывести массив, что бы получилось так: 1 _2 __3 ___5 _4 6 Сейчас попробую объяснить) это аля система чата. Где `id_a` - id сообщения, а `id_b` - id, на которое был сделан ответ. То есть судя по таблице видно, что 2 и 4 (`id_a`) сообщения были ответом на 1 (`id_b`) Если `id_b`==0, то это новое обычное сообщение. Я вот как пробовал. Вывожу в массиве сначала все сообщения, у которых `id_b`=0. Потом в этом уже массиве вывожу те, у которох `id_b`=`id_a`. И как бы всё здорово, но что бы дальше выводить подобное, то нужно писать скрипт одинакового массива в предыдущем массиве до бесконечности. Можно ли как то его зациклить или как лучше это сделать? Не могу подобрать логику.. да и знаний с практикой не хватает (( помогите!
0
|
|
| 17.06.2017, 21:54 | |
|
Ответы с готовыми решениями:
11
При выводе из базы совершает бесконечный цикл Бесконечный цикл( Возврат в бесконечный цикл после fatal error внутри него |
|
313 / 312 / 221
Регистрация: 11.07.2015
Сообщений: 1,107
|
||||||
| 17.06.2017, 22:37 | ||||||
|
Похожая реализация вывода дерева категорий
1
|
||||||
|
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
|
|||||||||||||||||||||||||
| 17.06.2017, 22:51 | |||||||||||||||||||||||||
Сообщение было отмечено Зеликов как решение
РешениеНе по теме: Можно использовать MongoDB или другие nosql решения Достать нужные сообщения
Добавлено через 5 минут Можно будет улучшить данную реализацию, добавив в бд поле level для глубины каждого комментария. Тогда можно будет выводить не все комментарии, и для длинных веток сделать load more.
1
|
|||||||||||||||||||||||||
|
3 / 3 / 1
Регистрация: 22.10.2013
Сообщений: 185
|
||||||
| 17.06.2017, 23:39 [ТС] | ||||||
|
Jewbacabra, очень не хочу с деревом париться.. мне надо то максимум в три пролёта сделать. А дальше пусть все под третий встают, но в нужном порядке просто. Вот глянь, если время будет. Впринципе всё получается как надо.. только как то бы повторы убрать))) и мне большего не надо))
0
|
||||||
|
313 / 312 / 221
Регистрация: 11.07.2015
Сообщений: 1,107
|
||||||
| 17.06.2017, 23:50 | ||||||
Сообщение было отмечено Зеликов как решение
Решение
1
|
||||||
|
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
|
|
| 17.06.2017, 23:53 | |
|
Зеликов, опять запросы в цикле...
1
|
|
|
3 / 3 / 1
Регистрация: 22.10.2013
Сообщений: 185
|
|
| 18.06.2017, 01:15 [ТС] | |
|
plohoyav, я просто фигею... работает. Я к сожалению половину не понимаю, что тут написанно, потому что с таким синтаксисом я ещё не работал.. но вот похоже настало время)) буду разбирать код этот) Пока что для меня это волшебство)) Всё работает как надо)) спасибо большое!!)!!!!!!
Добавлено через 1 минуту Jewbacabra, да чё то я пока до более разумного ни как дорости не могу.. вот мне ману небесную товарищ кинул.. я его вставил, всё заработало. Я в шоке. И такой короткий))) Я пару месяцев занимаюсь скриптами, так что ещё учиться и учиться конечно! Спасибо большое тебе. ps а цикл в цикле это совсем плохо?) У меня половина на этом держиться)) Добавлено через 1 час 1 минуту plohoyav, как мне разорвать функцию, что бы в неё вставить что нибудь.. К примеру между '<b>'.$row['id'].'</b> и '.$row['id_otvet'].' мне надо заинклюдить файл.. как не разрываю, такая голимотья на экране получается_)))
0
|
|
|
936 / 693 / 236
Регистрация: 01.02.2015
Сообщений: 1,848
|
|
| 18.06.2017, 01:23 | |
|
вообще для этой задачи лучше Nested Set или базу данных поддерживаемую рекурсивные запросы
PostgreSQL , Oracle , Microsoft SQL Server
1
|
|
|
3 / 3 / 1
Регистрация: 22.10.2013
Сообщений: 185
|
|
| 18.06.2017, 06:10 [ТС] | |
|
plohoyav, Всё круто! Всё оформил. Всё как хотел. Всё работает. Но вот проблема... у меня аватары пользователей генерируются при регистрации и заносятся в свою таблицу, потом от туда выбираются. Здесь я не могу выборку сделать в фореаче.. как мне соединить два массива? Таблицу коментов и аватаров, что бы я мог данные аватаров выбирать при показе комментария?
Добавлено через 2 часа 59 минут plohoyav, Додумался в одном мускул запросе соединить две базы данных)))) Я расту)))))) Спасибо всем большое!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
0
|
|
|
313 / 312 / 221
Регистрация: 11.07.2015
Сообщений: 1,107
|
||||||
| 18.06.2017, 07:56 | ||||||
Сообщение было отмечено Зеликов как решение
Решение
1
|
||||||
|
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
|
||
| 18.06.2017, 09:51 | ||
|
0
|
||
|
3 / 3 / 1
Регистрация: 22.10.2013
Сообщений: 185
|
|
| 18.06.2017, 11:50 [ТС] | |
|
plohoyav, Jewbacabra, ДА!!!!!! СПасибо ВАМ ВСЕМ большое!! Всё как мне надо заработало!! Огромное спасибо!)))) Без вас бы не справился
Добавлено через 18 минут Нарадоваться и настмотреться не могу)) Ещё раз спасибо!!
0
|
|
| 18.06.2017, 11:50 | |
|
Помогаю со студенческими работами здесь
12
Как реализовать бесконечный цикл While, но чтобы этот цикл не грузил процессор?
Как организовать бесконечный цикл? Как прекратить бесконечный цикл? как создать бесконечный цикл Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога
SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
|
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога
SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
|
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
|
|
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога
SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
|
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога
Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip"
Извлеките архив и вы увидите. . .
|
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога
Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д.
Сборка примера
Скачайте. . .
|
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|