Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Не правильно работает рекурсивная функция
По поводу быстродействия выборки для таблиц с большим количеством записей: для этого были придуманы индексы. Это отличный способ позволить БД уйти от тупого перебора всех записей пока он не встретит нужную.
Покинул форум
Сообщений всего: 4254
Дата рег-ции: Февр. 2011 Откуда: .kh.ua
Помог: 242 раз(а)
teddy, как всегда на своей волне...
Тут дерево строят, а не кол-во элементов считают.
3d_killer, какие данные передаются во второй вызов смотрели?
DelphinPRO, ага, только я выше такого не заметил.
3d_killer
Отправлено: 13 Февраля, 2014 - 14:51:23
Участник
Покинул форум
Сообщений всего: 1916
Дата рег-ции: Апр. 2011 Откуда: Ростов-на-Дону
Помог: 21 раз(а)
в запросе который я привел вторым. я просматривал что как идет
получилось что второй вызов забивает нужные данные но первый их затирает так как index для него то не менялся в процессе выполнения рекурсии.
То есть необходимо все таки использовать глобальную переменную, но в случае с ней первый элемент массива не 0 а пусто, как приведено в первом посте
teddy
Отправлено: 13 Февраля, 2014 - 14:55:34
Участник
Покинул форум
Сообщений всего: 1462
Дата рег-ции: Апр. 2013
Помог: 91 раз(а)
IllusionMH
Ну я понял что ему нужно выбрать категории и их подкатегории. Это можно сделать одним запросом используя группировку и вернуть результат как я написал выше.
IllusionMH пишет:
Тут дерево строят, а не кол-во элементов считают.
Мой пример не считает количество, а возвращает все записи, которые соответствуют условию выборки. Если результата нет, то вернется false.
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.