Покинул форум
Сообщений всего: 30
Дата рег-ции: Июль 2009 Откуда: Russia, Saratov area
Нет. Я просто никак не пойму.
Вот сейчас поставил для наглядности DataLife engine. Посмотрел таблицу с категориями. Вот что там(см. скриншот) Прикреплено изображение (Нажмите для увеличения)
-----
Stierus
Отправлено: 24 Августа, 2009 - 13:23:51
Рекордсмен по количеству сообщений за 7 дней
Покинул форум
Сообщений всего: 1063
Дата рег-ции: Дек. 2008 Откуда: Москваль
И что не понятно ?
есть id - он индивидуален, как серия и номер паспорта
есть pid - это id того раздела, которому ты являешься "потомком"
ну собери ты лестницу сам
id parent_id name
1 0 прадед
2 1 дед
3 2 отец
4 3 я
у меня id 4, мой родитель - элемент с id 3 (у меня в Parent_id это записано) ... смотрим, что у нас под элементом с id 3 ... блин, это ж отец ... мистика, а что у него в Parent_id стоит? ... вах, кто-то с id 2 ... кто бы это мог быть?
Ну на столько голову отключать нельзя же
-----
Roler
Отправлено: 24 Августа, 2009 - 13:25:20
Full Member
Покинул форум
Сообщений всего: 410
Дата рег-ции: Авг. 2008 Откуда: Россия
ibe
parent_id - это id родительской категории.
Данные лежат так, а когда выводятся категории - то всё забирается в массив, и по этому массиву проходятся
Покинул форум
Сообщений всего: 3426
Дата рег-ции: Авг. 2008 Откуда: Москва
ibe, думай, что делаешь. Если бы ты хоть чуть-чуть пытался понять, что ты делаешь, уже закончил бы давно с этим вопросом.
Я тебе давал запрос SELECT id, parent_id, caption FROM categories.
В созданной тобой таблице id и parent ты поменял местамиб а индексы в массиве - нет. И получилсоь совсем не то. Исправляй, смотри, думай. (Добавление)
Блин, все скопировал, даже комментарии не трогал. А список в select зачем-то поменял. Умник)
ibe
Отправлено: 24 Августа, 2009 - 22:12:10
Новичок
Покинул форум
Сообщений всего: 30
Дата рег-ции: Июль 2009 Откуда: Russia, Saratov area
Запарели уже эти категории...нифига ничего не получается.
Уже 2-ой день сижу с ними. С массивами я не пониамю как это можно сделать, ибо категории по parent_id не получается отсортировать вообще.
-----
Champion
Отправлено: 25 Августа, 2009 - 08:45:13
Эксперт
Покинул форум
Сообщений всего: 3426
Дата рег-ции: Авг. 2008 Откуда: Москва
ibe пишет:
по parent_id не получается отсортировать вообще.
ORDER BY. И перечисли поля в нужном порядке в селекте. И приведи сюда получивший правильный var_dump. И посмотри на него. И подумай.
А вообще, это означает, что либо ты слишком рано взялся за базы данных, либо вообще с ними не знакомился и сразу подменю лезешь с их помощью делать.
Stierus
Отправлено: 25 Августа, 2009 - 10:04:14
Рекордсмен по количеству сообщений за 7 дней
Покинул форум
Сообщений всего: 1063
Дата рег-ции: Дек. 2008 Откуда: Москваль
Теперь нужно вывести только нижнее меню, которое состоит из родительских категорий. Как - я не знаю. Пробовал через WHERE parent_id=id... не выходит.
-----
Вы неправильно меня поняли.
Покинул форум
Сообщений всего: 3426
Дата рег-ции: Авг. 2008 Откуда: Москва
Ты специально дубом прикидываешься? Я такое первый раз вижу, что человеку на протяжении почти 60 сообщений объясняют как меню с подменю построить. Причем говорят как сделать, а он 3й или какой там раз, делает не понятно как ...
Перечитай внимательно все сообщения, начиная с того, где я написал select. Прочитай этот select 1000 раз. Найди, чем он отличается от твоего. Заметь, что 2 раза я тебе уже эти отличия говорил
_tango
Отправлено: 05 Апреля, 2010 - 03:41:53
Новичок
Покинул форум
Сообщений всего: 5
Дата рег-ции: Апр. 2010 Откуда: Казахстан
Я, честно говоря, даже боюсь заикаться в этой ветке, о подкатегориях
Но выхода другого у меня нет, так что рискну , похоже, что у всех жертв курса Жени Попова одни и те же проблемы
Ситуация у меня совершенно аналогичная. Имеется база: id, parent_id, title
По вашей рекомендации, сделал запрос и создал из него в цикле массив:
Получился многомерный массив. Но у него нет той же структуры вложенности, что и у таблицы, здесь в первом элементе массива содержатся категории, а в остальных подкатегории:
Проблема в том, что с комбинаторикой у меня дела не важно обстоят
Подскажите пожалуйста, как обойти массив, чтобы вывести категории и подкатегории в правильной последовательности?
Champion
Отправлено: 05 Апреля, 2010 - 11:01:32
Эксперт
Покинул форум
Сообщений всего: 3426
Дата рег-ции: Авг. 2008 Откуда: Москва
Комбинаторика тут не важна. Обойти массив надо циклом foreach. Получшь номер категории и массив ее элементов.
JustUserR
Отправлено: 05 Апреля, 2010 - 11:58:36
Эксперт
Покинул форум
Сообщений всего: 5854
Дата рег-ции: Июнь 2009
_tango пишет:
Подскажите пожалуйста, как обойти массив, чтобы вывести категории и подкатегории в правильной последовательности?
Если массив уже многомерный то функция print_r как раз выведет вам в нужной последовательности с сохранением уровня вложенности
-----
_tango
Отправлено: 06 Апреля, 2010 - 01:34:27
Новичок
Покинул форум
Сообщений всего: 5
Дата рег-ции: Апр. 2010 Откуда: Казахстан
Вот, создал
Но как то уж очень натянуто получилось
Господа мэтры, помогите покрасивше сделать?
Пожалуйста
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.