Categories en Subcategorieën maken

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

J webbie

j webbie

04/10/2010 19:11:56
Quote Anchor link
Ik ben bezig met een eigen website met verschillende onderwerpen nu zou ik graag onder games en film nieuws de verschillende subcategorieën willen maken.


Games --> PC
Playstation
XBox 360
etc..

Film nieuws --> Actie
Thriller
SF
etc...

Moet ik dan verschillende tabellen aanmaken in de MySQL database gekoppeld aan de subcategorieën of gewoon 1 tabel met Games ? Momenteel ben ik bezig met een webdesign opleiding dus ik weet hoe ik moet lezen en schrijven in MySQL.

Maar hoe ik precies een categorie en subcategorie moet maken dat weet ik niet?
Zowel in de database als in MySQL vertalen naar php niet iemand tips of informatie hoe ik dit beste kan maken.
Gewijzigd op 04/10/2010 19:12:31 door J webbie
 
PHP hulp

PHP hulp

07/12/2021 21:57:51
 

04/10/2010 19:16:53
Quote Anchor link
Doe eens zoeken.
Recentelijk nog gevraagd.
 
Nicoow Unknown

Nicoow Unknown

04/10/2010 19:21:39
Quote Anchor link
een extra veld met parentId maken, als deze NULL is, dan is het een hoofd categorie, en anders is het een subcategorie.
Je kan dan dus bijvoorbeeld sub categorieën selecteren door op te vragen bij welke rijen de parentId gelijk is aan de opgehaalde categorieId
 
J webbie

j webbie

04/10/2010 21:35:25
Quote Anchor link
Zit nog maar 2 maandjes in het php wereldje en is veel informatie.
Wil het wel graag op de juiste manier leren zie ik het zo goed ?
Dat ik een hoofdcategorie Tabel Games heb en de subcategorie tabellen pc,playstation, xbox 360, etc.. dus voor elke subcategorie een tabel aan moet maken maar wel gekoppeld aan de hoofdcategorie Tabel.

Hoofdtabel --> Games (id,naam,(id (ai)(primary) (naam, varchar 200)
Subtabel --> PC (id, naam, omschrijving, image, games_id)
Subtabel --> playstation (id, naam, omschrijving, image, games_id)
Subtabel --> Xbox 360(id, naam, omschrijving, image, games_id)
Subtabel --> etc... (id, naam, omschrijving, image, games_id)
 

04/10/2010 22:02:52
Quote Anchor link
Nee, geen extra tabellen aanmaken.
Eerst de theorie leren voordat je wat probeert.
 
J webbie

j webbie

04/10/2010 22:37:21
Quote Anchor link
Karl Karl op 04/10/2010 22:02:52:
Nee, geen extra tabellen aanmaken.
Eerst de theorie leren voordat je wat probeert.


Heb wat forum berichten gelezen nu komt er wel wat logica in dat in verschillende tabellen niet verstandig.

Nu heb ik het volgende gelezen in één van forum berichten:
In de tabel categorie plaats in: Games, Film nieuws, Muziek nieuws.

TABLE categorie (
id int(11) NOT NULL auto_increment,
naam varchar(255) NOT NULL,
PRIMARY KEY (id)
);

Hier worden de namen geplaatst van de subcategorie :
pc,xbox360,playstation die worden gekoppeld aan categorie_id games

CREATE TABLE producten (
id int(11) NOT NULL auto_increment,
naam varchar(255) NOT NULL,
omschrijving text NOT NULL,
categorie_id int(11) NOT NULL,
PRIMARY KEY (id)
);

Maar dan zou er zoals ik het 1 tabel bij moeten voor de informatie gekoppeld aan producten ??
 
Nicoow Unknown

Nicoow Unknown

04/10/2010 22:41:46
Quote Anchor link
Heb jij mijn reactie wel gelezen?

Lijkt er een beetje op alsof je advies gewoon niet aanneemt,,
 
J webbie

j webbie

04/10/2010 22:57:35
Quote Anchor link
Nico Kaag op 04/10/2010 22:41:46:
Heb jij mijn reactie wel gelezen?

Lijkt er een beetje op alsof je advies gewoon niet aanneemt,,


Ik heb je bericht wel gelezen, en wil best advies aannemen graag zelfs.
Alleen wil graag weten hoe alles in mekaar zit. En kwam in een ander forum bericht mijn vorige antwoord tegen en wil wat opties hebben wat allemaal mogelijk is.

Uw advies een extra veld aanmaken Parent_ID wanneer Null is hoofd Not Null sub.
Zou graag een voorbeeldje willen hoe dat precies in mekaar zit.

Begrijp me niet verkeerd ik neem uw advies zeker aan absoluut maar wil ook kijken naar opties wat nog meer mogelijk is.
 
Nicoow Unknown

Nicoow Unknown

06/10/2010 23:40:42
Quote Anchor link
een extra veld met parentId maken, als deze NULL is, dan is het een hoofd categorie, en anders is het een subcategorie.
Je kan dan dus bijvoorbeeld sub categorieën selecteren door op te vragen bij welke rijen de parentId gelijk is aan de opgehaalde categorieId
 
Pieter Jansen

Pieter Jansen

07/10/2010 00:25:49
Quote Anchor link
Het belangrijkste om te onthouden is dat je (sub) categorieen nog steeds CATEGORIE is. Oftewel, het enige wezenlijke verschil is dat de sub categorieen een ouder nodig hebben. Met ouder bedoelen we altijd een niveau hoger, in dit geval dus een hoofd categorie.

Je tabel zou er ongeveer zo uit moeten zien:

categorie_id,
naam,
veldje1,
veldje2,
ouder_id

Wat je bij veldje1 en 2 of wat dan ook invult, is hier niet relevant. Het gaat erom dat je dus een ouder_id mee gaat geven. Zorg ervoor dat deze standaard 0 is. Dan weet je dat bij de ( waarde gelijk aan 0 ) het om een hoofd categorie gaat.

Heb je bijvoorbeeld consoles ( ps, xbox, wii ) dan geef je in ouder_id dus het categorie_id mee van je hoofdcategorie.

Dus bijvoorbeeld:

GAMES zou kunnen zijn:
categorie_id = 1,
naam = "games",
ouder_id = 0

PLAYSTATION zou dan zijn:
categorie_id = 2,
naam = "playstation",
ouder_id = 1

Nu kun je dus voor alle hoofdcats zoeken naar alle categorieen met ouder_id gelijk aan 0, en kun je alle sub categorieen vinden door te zoeken naar alle categorieen met ouder_id gelijk aan hoofdcategorie.

Ik hoop dat het zo duidelijk is :)
 
J webbie

j webbie

07/10/2010 01:07:40
Quote Anchor link
Dit begrijp ik wel nu kan ik eerst wel verder, alleen uitlezen zal nog wel even uitzoeken zijn hoe ik het precies vertaal in php.

In ieder geval alvast bedankt voor de reacties!!!
 
Milo S

Milo S

07/10/2010 08:24:47
Quote Anchor link
Het uitlezen is eigenlijk gewoon 1 query opstellen waarbij je alles wat je wilt eruit haalt, en nee niet met de astrix selecteren... Orden dan bij id en parent_id gok ik zo.
Dan stel je gewoon een if statement of en kijk je of parent_id 0 is of 1 is.
Ik heb hetzelfde geprobeerd alleen onlangs mijn nu wel redelijke tijd dat ik php gebruik was het me toen niet gelukt, zal het binnenkort nog eens proberen :P.

Graag verbeteren als ik iets fout zeg want wil het zelf ook kunnen (6). Zelf zie ik trouwens alleen maar voorbeelden met 2 tabellen en een left join.
Gewijzigd op 07/10/2010 08:26:20 door Milo S
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.