Mysql Muziek Database Inrichten
van een upload site zoals zippyshare waarna ik de download link op mij site kan zetten.
Die download link komt in de database te staan, nu wil ik alles catogoriseren op genre/categorie.
Ik heb ongeveer 19 categories en algemene gegevens zoals id.
Ik heb het nu zo in phpmyadmin:
Table Name: Muziek
muziek_id
username
muziek_titel
muziek_link
muziek_categorie
EN
muziek_datum_geplaatst
Is het handiger om die 19 categorien te scheiden en dus elke een eigen kolom te hebben?
bijv:
Table Name: Muziek
muziek_id
username
muziek_titel
muziek_link
muziek_reggae
muziek_andere_genre1
muziek_andere_genre2
muziek_andere_genre..
muziek_andere_genre18
muziek_andere_genre19
EN
muziek_datum_geplaatst
Of is het beter om zelfs een eigen tabel voor elke categorie te maken dus zo:
Table Name: Muziek_reggae
muziek_reggae_id
username
muziek_reggae_titel
muziek_reggae_link
EN
muziek_reggae_datum_geplaatst
Alvast Bedankt!
Gewijzigd op 12/02/2013 21:15:01 door Francoi gckx
categorie_id // uniek id
categorie_titel // titel categorie
(categorie_link // link categorie)
Table Name: Muziek
muziek_id
categorie_id
username
muziek_titel
muziek_link
muziek_datum_geplaatst
de categorie tabel gebruik je om een <select><option value="categorie_id">categorie_titel</option>...</select> te maken op je pagina waar je muziek kunt uploaden.
als je dan een overzicht wilt weergeven van nummers dan kun je een left join gebruiken om de categorieën er bij weer te geven
Gewijzigd op 12/02/2013 22:34:33 door Frank Nietbelangrijk
Toch nog 2 vragen: Wat voor waardes had jij bedoeld voor categorie_link?
In Table: Muziek
Is muziek_categorie niet dubbel op want je heb al in die table een categorie_id
die je kan linken in de Categorie Table die de bijhorende categorie_titel vind.
In kort: is muziek_categorie en categorie_titel niet dubbel op?
ja muziek_categorie is dubbel. die moet er uit
Ik heb het even aangepast
en username zou je nog kunnen veranderen in user_id die dan weer naar een tabel users verwijst
Gewijzigd op 12/02/2013 22:35:55 door Frank Nietbelangrijk
Ik heb de categorie table gevuld met al de verschillende muziekstylen in kolom categorie_titel // titel categorie
-Ja dat zou netter zijn met die user_id maar voorlopig hou ik het even bij username die zijn waarde krijg van $_SESSION['username']
Dus vanaf hier ga ik verder.
Heel erg bedankt wat een fijne leraar is phphulp!
Zo niet in iedergeval
elseif ($rst_muziek_all = $mysqli->query("SELECT muziek_categorie.muziek_categorie_titel as categorie_titel, muziek.muziek_categorie_id as categorie_id, muziek.muziek_id, muziek.username, muziek.muziek_titel, muziek.muziek_van, muziek.muziek_link, muziek.muziek_datum_geplaatst FROM muziek, muziek_categorie ORDER BY muziek.muziek_datum_geplaatst DESC"))
Waarom niet?
tabelA heeft 40 records en tabelB 2000, resultaat is 40x2000=800000 records
Ik ben nog niet helemaal gemakkelijk met 'complexe' queries en ik begrijp dat je dit met leftjoin moet doen?
Tabel: Muziek heeft een record met muziek_categorie_id zeg maar het getal: 7
nu wil ik dat getal, muziek_categorie_id, verbinden aan muziek_categorie_titel van tabel muziek_categorie waar muziek_categorie_id ook 7 is