Hulp bij webwinkel (categorieen)
ik heb de volgende code om de categorieen uit mijn db te halen:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
<?php $rQueryCat = mysql_query ( "SELECT *
FROM products_categorieen
WHERE categorie_parent = 0
ORDER BY categorie_naam ASC ") or die ( mysql_error() );
while ( $aQueryCat = mysql_fetch_assoc ( $rQueryCat ) )
{ echo ' -<a href="index.php?pagina=webwinkel&cat='.stripslashes ( $aQueryCat['categorie_id'] ).'">'.stripslashes ( $aQueryCat['categorie_naam'] ).'</a><br />';
bepaalSub($aQueryCat['categorie_id']);
}
?>
FROM products_categorieen
WHERE categorie_parent = 0
ORDER BY categorie_naam ASC ") or die ( mysql_error() );
while ( $aQueryCat = mysql_fetch_assoc ( $rQueryCat ) )
{ echo ' -<a href="index.php?pagina=webwinkel&cat='.stripslashes ( $aQueryCat['categorie_id'] ).'">'.stripslashes ( $aQueryCat['categorie_naam'] ).'</a><br />';
bepaalSub($aQueryCat['categorie_id']);
}
?>
Hij gaat nu tot 2 niveau's diep. Lijkt nu voldoende, maar hoe krijg ik het makkelijk dat hij het in principe onbeperkt doet? Heb in tabel categorieen een id, omschrijving & parent_id
Belangrijkste vraag is even de menuopbouw. Hij toont nu alles direct onder elkaar. Ik wil eerst alleen 1ste niveau zien, als ik daarop klik de onderliggende (van die betreffende categorie). Hoe ga ik dat voor elkaar krijgen!?
gr
Herbert
Gewijzigd op 01/01/1970 01:00:00 door Herbert Foppen
Onbeperkt? Hoe ziet je datamodel eruit? Wat is bijvoorbeeld de indeling van de tabel products_categorieen?
`categorie_id` int(5) NOT NULL auto_increment,
`categorie_naam` varchar(255) NOT NULL default '',
`categorie_parent` int(5) NOT NULL default '0',
PRIMARY KEY (`categorie_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=72 ;
Een index op "categorie_parent" is geen overbodige luxe ;P
Dan kun je beter van tevoren zeggen: ik wil hooguit twee niveau's diep gaan en dit artikel even lezen.
Met javascript zorg je er voor dat de lagen zichtbaar worden.
Een voorbeeld hiervan is:
http://tweakers.net/pricewatch/
Onder het kopje "Productcategorieën". Volgens mij werkt dat op dezelfde manier namelijk.
Gewijzigd op 01/01/1970 01:00:00 door Martijn B