Simple tree view with Ajax and MySql-PHP Тестовое задание:
Построить древовидную структуру n-уровневой вложенности (для примера см. Рис.1). Ветви дерева - Категории, листья – Позиции. Позиции обладают 2-мя атрибутами: Название, Тип. В результате нужно сгруппировать позиции по Типу и вывести в виде дерева, указывая при этом категории позиций (см. Рис.2). При разработке механизма дерева, нужно учитывать, что вложенность дерева может быть очень велика (порядка 5-7 тыс записей) и нужно максимально уменьшить трафик при разворачивании дерева на очень глубокий уровень (использование ajax).
Так как этот код не для продакшн, то для построения дерева была придумана новая структура, а не использована проверенная, как, например, nested set. Поэтому возможны глюки - нужно тестить. Также интересно было бы потестить на больших деревьях.