Mysql
 sql >> Database >  >> RDS >> Mysql

Come eseguire il rendering di un albero in html + php(codeIgniter)

Sembra un po' complicato e inflessibile quello che stai facendo qui Gilles. Non sarebbe meglio creare la tabella del database con ogni riga con il proprio category_id e un parent_id? cioè dai ai genitori di livello superiore un parent_id pari a 0 e i bambini prendono il parent_id del category_id dei loro genitori. Questo ti darebbe una profondità illimitata e sarà più facile codificare quando esegui il rendering dell'albero. Ad esempio:

SQL per il tuo primo livello di gerarchia -

SELECT * FROM (your_table) WHERE parent_id=0

SQL per il tuo secondo livello di gerarchia -

SELECT * FROM (your_table) WHERE parent_id=(category_id of first level)

SQL per il tuo terzo livello di gerarchia -

SELECT * FROM (your_table) WHERE parent_id=(category_id of second level)

e così via...