eugene2009 Posted November 13, 2009 Share Posted November 13, 2009 So i got this part figured out.. CREATE TABLE category( category_id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(20) NOT NULL, parent INT DEFAULT NULL); INSERT INTO category VALUES(1,'ELECTRONICS',NULL),(2,'TELEVISIONS',1),(3,'TUBE',2), (4,'LCD',2),(5,'PLASMA',2),(6,'PORTABLE ELECTRONICS',1), (7,'MP3 PLAYERS',6),(8,'FLASH',7), (9,'CD PLAYERS',6),(10,'2 WAY RADIOS',6); SELECT * FROM category ORDER BY category_id; My question is now.. how do I generate html pages where PAGE 1 (ELECTRONICS) Televisions Portable Electronics PAGE 2 (DEPENDING ON PAGE 1 SELECTION) .. Lists here all the childs of electronics.. PAGE 3 ..Lists the subcategory of previous page. Does anyone know what im talking about? Quote Link to comment https://forums.phpfreaks.com/topic/181342-categorizing-tables/ Share on other sites More sharing options...
JustLikeIcarus Posted November 13, 2009 Share Posted November 13, 2009 Personally I would change the root category parent ids to 0 then generate the entire tree at once with something like. Or if you seperate by page you would just need to send the "parent" id to this same type of function via a get variable. Do a search on Adjacency List Model their are tons of example out there. function display($parent) { $result = mysql_query('SELECT category_id, name FROM categories WHERE parent ='. $parent); $html = '<ul>'; while ($row = mysql_fetch_array($result)) { $html .= '<li><a href="whatever.php?cat='.$row['category_id'].'" >'.$row['name'].'</a></li>'; display($row['id']); } $html .= '</ul>'; return $html; } $tree = display(0); echo $tree; Quote Link to comment https://forums.phpfreaks.com/topic/181342-categorizing-tables/#findComment-956839 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.