Toon posts:

[MySQL5/PHP5] geneste categorieen weergeven

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hallo mensen

Vorige week heb ik hier een vraag gesteld over onderelkaar liggende categorieen.
De links waren erg bruikbaar en ik ben aardig ver gekomen maar vind het nog steeds erg moeilijk.
Nooit gedacht dat dit project zo moeilijk zou zijn :(
Ik ben uit gegaan van de nested categories model. Dus met de left en right waarden (vanwege de dynamiek)

Het toevoegen en verwijderen van categorieen heb ik inmiddels geautomatiseerd.
Maar het weergeven van de categorieen was tot nu toe beperkt tot een select waarin ik via een script vrij gemakkelijk alle categorieen geindent kon weergeven
Zie het resultaat hier:
http://www.ivograsman.nl/test.htm

Maar nu wil ik graag via een groter en gebruikersvriendelijkere html pagina dit allemaal gaan weergeven.
Maar daar kom ik niet uit.
Ik had al wel iets om de eerste vier basis categorieen weer te geven.
Maar als je dan op zo'n categorie klikt zou de onderliggende reeks moeten worden weergegeven. Dit krijg ik gewoon niet voorelkaar.
Ik kan het ook niet meer visualiseren. Het betreft ook 1004 categorieen (er zitten veel dezelfde tussen).

Nu denk ik ineens aan XML Maar goed mijn data is op een verkeerde manier opgeslagen daarvoor.
Weet verder ook vrij weinig van XML.
Maar in ieder geval. Sitepoint en MySQL en overige bronnen gaan niet echt op dit in.

Dus, om even samen te vatten.
Wat is een goede manier om de categorieen weer te geven.
Ik kan ze nooit zo weergeven zoals in de select op de url hierboven.
Want dat wordt gewoon te groot. Daarom wil ik elke keer als ik op een categorie klik de childs van die categorie laden. En niet die eronder liggen.

  • SchizoDuckie
  • Registratie: April 2001
  • Laatst online: 18-02 23:12

SchizoDuckie

Kwaak

Eigenlijkj wil je dus een soort van dynamic boompje met uitklapbare mapjes die uitklappen als er childs onder zitten?

Dan begin je dus op niveau 0, die selecteer je + je kijkt of er een child categorie onder zit
Die tover je op je scherm, en bij een onclick op zo'n ding stuur je een ajax call naar je script die alle childs van dat menuid binnentrekt, weer op dezelfde manier als niveau 0, en deze daaronder plakt.

daar is best al wat over geschreven dus dat zou je zo moeten kunnen vinden :)
Zoek anders ook even op recursief opbouwen van een boomstructuur.

Stop uploading passwords to Github!


  • FragFrog
  • Registratie: September 2001
  • Laatst online: 22:55
AJAX is nog niet eens nodig, gewoon elke select simpelweg z'n childnotes aan laten zetten met een javascript call. Iets als onClick = this.addChild(); bijvoorbeeld.

Wat je trouwens veel vaker ziet en wat dus ook veel intuitiver is, is om meerdere selects naast elkaar te zetten, in welk geval je bijvoorbeeld simpelweg selectbox2.innerHTML = blaat kan doen afhankelijk van op welk item je bezoeker klikt in selectbox 1.

Als het voor een menu is trouwens zou ik heel snel die hele selectbox structuur vergeten en een nette DOM structuur gebruiken, wellicht zelfs ICM Ajax, zoals SchizoDuckie al aangeeft :)

Semi verplicht leesvoer: Quirksmode DOM intro

[ Voor 7% gewijzigd door FragFrog op 29-03-2007 05:10 ]

[ Site ] [ twitch ] [ jijbuis ]


  • xces
  • Registratie: Juli 2001
  • Laatst online: 01-12 18:56

xces

To got or not to got..