Versio

[datamodel] audio collectie

Overzicht Reageren

Jurgen assaasas

Jurgen assaasas

26/05/2008 14:24:00
Quote Anchor link
Ik ben net begonnen om een opzetje te maken voor mijn CD collectie (ja ik koop ze :) ), Hierbij heb ik het volgende opgezet:

FK's staan er niet in, maar die komen wel.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
records
---------------------------------
id          PK serial
naam          varchar(100)
band_id         int(5)
label_id     int (5)
info          varchar
rating         int(2)
type_id         int(3)
cover         varchar

labels
---------------------------------
id         PK serial
naam         varchar(100)
info         varchar

genres
---------------------------------
id         PK serial
naam         varchar(50)

genres_records
---------------------------------
genre_id     PK int
record_id     PK int

types
---------------------------------
id        PK serial
naam        varchar(50)

bands
---------------------------------
id        PK serial
band_naam    varchar(50)
locatie        varchar(50)
vlag        varchar
foto        varchar


Ik zit een beetje te dubben met genre's hoe ik dit ga doen. Ik wil hetzelfde idee als last.fm gebruikt met tags. Dus een textvak waarbij tags met komma gescheiden worden en daarna als losse tag opgeslagen. Dat snap ik wle met een explode, maar nu wil ik dus als een genre nog niet bestaat dat deze aan de genre tabel wordt toegevoegd, maar ook dat dit genre meteen in de koppel tabel genres_records wordt opgeslagen (omdat in mijn geval een CD/DVD/LP etc meerdere genre's kan bevatten).

Hopelijk kunnen jullie mij hier mee verder helpen.
 
PHP hulp

PHP hulp

24/05/2012 09:00:39
Gesponsorde koppelingen:
 
Thijs X

Thijs X

26/05/2008 14:34:00
Quote Anchor link
Wat is nou precies je vraag?
De database structuur ziet er goed uit iig.

Als je een nieuw record wilt gaan toevoegen en ga je eerst controleren of de genre(s) al bestaan.
Zo niet dan voeg je deze toe aan de database en haal het genre_ID ervan op. Die je weer gebruikt om het record te koppellen aan het genre.
 
Citroen Anoniem Graag

Citroen Anoniem Graag

26/05/2008 15:20:00
Quote Anchor link
Op deze manier kan je niet meerdere labels aan 1 liedje hangen, ik weet niet of dit de bedoeling is?

Verder vraag ik me af of een liedje meerdere genres zal hebben? Als je zeker weet dat elke liedje (geen of) een genre heeft dan mag die koppel tabel weg en moet je een extra kolom bij records toevoegen. Is dat niet zo dat is het zo goed.
 
Jurgen assaasas

Jurgen assaasas

26/05/2008 15:25:00
Quote Anchor link
Het gaat niet om een liedje maar om een CD of DVD.

band A heeft als enige genre misschien pop, band B heeft misschien pop, rock en misschien wat blues. Op die manier wil ik het doen, eigenlijk hetzelfde idee als in mijn eerste post, een soort van tagging idee dus.
 
Arend a

Arend a

26/05/2008 15:35:00
Quote Anchor link
Dat kan toch zoals je het nu doet? Je kan aan de een een genre toevoegen, en aan de ander 20. Alleen even zorgen dat naam een unique contraint heeft in de tabel genres.
 
Nicoow Unknown

Nicoow Unknown

26/05/2008 16:05:00
Quote Anchor link
En één liedje kan wel degelijk meerdere genres hebben.
Robby williams heeft bijvoorbeeld een rap nummer, maar dat valt onder het genre rap en pop. RHCP valt ook onder zowel rap als rock.
Terwijl dit toch niet een echt genre is, het word wel vaak zo gezegd, maar het zijn nogsteeds 2 aparte genre's.
 
Citroen Anoniem Graag

Citroen Anoniem Graag

26/05/2008 16:14:00
Quote Anchor link
Ja, een liedje kan meerdere genres hebben, maar toch ook meerdere labels? Het mooist zou het nog zijn als je ook zelf labels kan maken waarop je kan soorteren.
Dan klopt er iets niet.
 
Nicoow Unknown

Nicoow Unknown

26/05/2008 16:20:00
Quote Anchor link
Een liedje kan opzich meerdere labels hebben, maar dat is dan meestal weer in samenwerking met een sublabel of een "artist label" zoals die van timbaland enzo.
En de optie dat je zelf labels kan aanmaken snap ik niet,,
Als je wilt, kan je best je eigen label beginnen, kost alleen maar wat aan apperatuur, en nog wat geld erbij voor de KVK, maar dat hoeft toch niet met een database? :P
 
Citroen Anoniem Graag

Citroen Anoniem Graag

26/05/2008 16:23:00
Quote Anchor link
Ahah, hier ontstaat het mis verstand over label, jij dacht aan label van de platenmaatschappij. Terwijl ik dacht aan een soort 'tag' die je eraan hangt.
Bijvoorbeeld 'vrijdag avond muziek' of 'voor mijn moeder', enzovoort

Dat het zeg maar mogelijk is zelf wat 'tags' of 'labels' op te geven aan een nummer.
 
Jurgen assaasas

Jurgen assaasas

26/05/2008 17:09:00
Quote Anchor link
Ja even voor de duidelijkheid, het gaat hier over een platenlabel, niet over een tag :) Een CD heeft maar 1 label, uiteraard kunnen dat er ook meer worden maar nu doe ik er gewoon 1tje, dat staat bij mijn CD's meestal achterop.
 
Arend a

Arend a

26/05/2008 17:28:00
Quote Anchor link
Sorry, ik had je vraag niet goed gelezen zie ik nu. Ik zou je labels net als genres behandelen. Dus een many-to-many relatie. Dit hoeft er uit eindelijk niet zo uit te zien. Op deze manier is het terugvinden van bepaalde songs met bepaalde tags veel eenvoudiger.

tags_records
tag_id FK
record_id FK

tags
id PK
value Unique
 
Jurgen assaasas

Jurgen assaasas

26/05/2008 17:33:00
Quote Anchor link
Ik denk dat ik dit later nog er in ga bouwen dan, nu wil ik eerst eens kijken hoe ik het beste en met zo min mogelijk PHP code het genre idee ga aanpakken. Als dit eenmaal goed is en waterdicht dan pas ik dit toe op de labels denk ik.
 
Robert Deiman

Robert Deiman

26/05/2008 17:36:00
Quote Anchor link
@Jurgen, je kan toch een dropdown maken met allerlei genres, met een optie: "anders namelijk" waarna er een input veld komt waarin ze het andere genre in kunnen voeren?
Je kan er dan wel niet blind op vertrouwen dat het gezochte genre echt niet in de lijst staat (gewoon simpel controleren met een select query) maar het is wel makkelijk om na te gaan.

Arend heeft wel gelijk, 1 label heeft in principe meerdere cd's / artiesten onder contract staan, dus dan kan je de labels ook beter apart trekken.
 



Overzicht Reageren

Get Adobe Flash player