Database-entiteit omzetten naar Tree
Ik heb een database met een soort van boomstructuur:
id (INT)
boundTo (INT)
title (VARCHAR)
Het idee is dat de kolom 'id' uniek is (gewoon de primaire sleutel) en dat 'boundTo' verwijst naar 'id' (zo kun je dus vertakkingen krijgen).
id, boundTo, title
1, 0, hoofd
2, 1, oog
3, 1, neus
4, 2, iris
5, 2, pupil
Zo heb je het effect dat aan het hoofd de oog en de neus zitten, en aan het oog de iris en de pupil.
Nu wil ik dit model omzetten naar een soort Tree:
Code (php)
Hoe kan ik het model die de database gebruikt, het beste omzetten naar een tree-model als hierboven?
Neem aan dat de data uit de database al in dit format staat:
Code (php)
enz.
Ik ben ervan overtuigd dat er meerdere wegen naar Rome zijn, maar welke is de beste? Moet ik in PHP een entity-object maken die de databasetabel representeert? En wat is het voordeel van die methode?
Greetz,
Maurits
Gewijzigd op 29/09/2010 19:32:51 door Maurits de Jong
Want dit is een parent child relatie.
Meestal heeft jou kolom bountTo de naam parentid.
Ik denk dat je hier wel wat aan hebt:
http://crisp.tweakblogs.net/blog/317/formatting-a-multi-level-menu-using-only-one-query.html
Gewijzigd op 29/09/2010 19:39:14 door Martijn B
Martijn B op 29/09/2010 19:38:06:
Heb je dit zelf bedacht?
Want dit is een parent child relatie.
Meestal heeft jou kolom bountTo de naam parentid.
Want dit is een parent child relatie.
Meestal heeft jou kolom bountTo de naam parentid.
Ja, zelf bedacht! Maar het lijkt erop dat precies dit principe al bestaat, als ik op jouw link klik! ;-)
Martijn B op 29/09/2010 19:38:06:
Dit lijkt verdacht veel op wat ik zoek! Bedankt! Ik ga het maar ff toepassen en testen in m'n eigen scripts!
Bedankt voor je snelle reactie!
Best knap dat je hier zelf opgekomen bent ;D
Dank je wel! Ik heb zogezegd zelf het wiel opnieuw uitgevonden. :-P
Maurits de Jong op 29/09/2010 19:51:37:
Dank je wel! Ik heb zogezegd zelf het wiel opnieuw uitgevonden. :-P
Dat geeft mooi aan dat het een goed idee is ;-).