Здравствуйте, подскажите, как спроектировать таблицы в базе, что бы была возможность создавать вложенные папки. например: папка1 имеет дочерние папки: папка2 и папка3 папка3 имеет дочернюю папку папка4 и так бесконечно. пробовал такое решение: но мне кажеться, что такое не катит. или катит. вообщем, проконсультируйте или киньте ссылку, найти не могу ((
1. select t2.* from mytable t1, mytable t2 where t1.id= <родитель заданной папки> and t1.parent = t2.id 2. select * from mytable where parent = <id заданной папки>
Ну зачем вам в бд копия файловой структуры? Для хранения большого числа файлов в разных папках в целях производительности? Для последней задачи можно строить путь из сгенерированного на сервере имени файла. К примеру, есть файл qwerty.jpg. Он лежит в каталоге /files/q/w/e/qwerty.jpg. Для того чтобы построить путь вашему классу для работы с файлами будет нужно лишь имя файла. upd. Так понял, что тс неверно выразился и имеется ввиду иерархия контроллеров, а не "папок".
гугли "дерево списки смежности" или "mysql adjacency list" или "php adjacency list" — информации просто вагон! AL "катит", но чем глубже вложенность, тем заметнее накладные расходы. в общем, как нечто абстрактное оно годится, упражняйся.