|
3 / 3 / 1
Регистрация: 22.10.2013
Сообщений: 185
|
|
Бесконечный цикл или как?17.06.2017, 21:54. Показов 2421. Ответов 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, но чтобы этот цикл не грузил процессор?
Как организовать бесконечный цикл? Как прекратить бесконечный цикл? как создать бесконечный цикл Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2.
При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
|
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут.
https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc
Первый документ красиво выглядит, но без схемы.
Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
|
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере".
Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
|
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти".
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2.
В качестве источника данных. . .
|
|
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер
Написал заготовку:
dotnet new console --aot -o UrlHandler
var items = args. Split(":");
var tag = items;
var id = items;
var executable = args;. . .
|
Отправка уведомления на почту при создании или изменении элементов справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере типового справочника "Склады" в конфигурации БП3.
Перед реализацией необходимо выполнить настройку системной учетной записи электронной. . .
|
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений.
9TO2GP2bpX4
a42b81fb172ffc12ca589c7898261ccb/
https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/
Слева синяя линия -. . .
|
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. .
Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
|