Генерировать правильные данные в теге select

Структура таблицы категория:

id | parent_id | name
----------------------
1  | NULL      | test1
2  | NULL      | test2
3  | 1         | test3
4  | 1         | test4
5  | 3         | test5
6  | 2         | test6
7  | 6         | test7
8  | 3         | test8

Это дерево.

Итак, это то, что я хочу в PHP: у меня есть идентификатор (это может быть аргумент функции), например, 5, и я хочу сгенерировать теги выбора (в этом примере 3 уровня), поэтому я хочу сгенерировать что-то вроде этого: https://jsfiddle.net/Lh8y2mzh/

test6 и test7 не выбраны, и это то, что я хочу. Я думаю, что это должно работать рекурсивно. Любая помощь? Как сделать функцию?


person user2536914    schedule 09.02.2016    source источник
comment
Похоже на домашнее задание!!!   -  person Sougata Bose    schedule 09.02.2016
comment
Я просто понятия не имею, как решить проблему. Я нахожу только, как создать дерево из данных, но я не могу настроить его, как указано выше.   -  person user2536914    schedule 09.02.2016
comment
Проверьте эту ссылку: - stackoverflow. ком/вопросы/29384548/   -  person Ravi    schedule 09.02.2016
comment
Рави Хирани спасибо, но он возвращает все элементы из таблицы   -  person user2536914    schedule 09.02.2016