login  Naam:   Wachtwoord: 
Registreer je!
 Forum
Zoeken  Regels  Help
Categorieën > PHP & SQL

Meerdere id's

Jointjeff – 02/03/2008 22:32
Hallo,

Het ene probleem is opgelost als het andere er alweer bijkomt.

Het is me gelukt met JOINS twee tables aan elkaar te koppelen. Nu is het zo dat een tv serie meerdere acteurs bevat.

Als ik nu meerdere acteur_id's invul, roept die echter alleen de eerste op. Ik ben dus beperkt tot een acteur oproepen. heeft iemand een idee, hoe dat op te lossen?

10 antwoorden

Gesponsorde links

yetti4 – 02/03/2008 22:59
je moet in de naam van id iets variabels toevoegen:
bijvoorbeeld:
php_1 php_2 en dan pak je de value voor de "_"
als je geen variabele hebt maak je dervoor een php lus.

Jointjeff – 02/03/2008 23:19
...

Tv serie pagina ::

The A-Team

acteurs: Dirk Benedict, George Peppard, Mr T

Verhaal: blabla

...

Nu kan ik dus alleen maar 1 acteur, Dirk Benedict oproepen.. Hoop dat je snapt wat ik bedoel.

jopiegoekopi – 02/03/2008 23:20
yetti4 hoe kun je een reactie geven pretenderend dat het een antwoord is, terwijl er niet eens een duidelijke vraag gesteld is?!

niet dat jouw bericht verder iets waard is...

Gerard – 02/03/2008 23:23
Nee, we zullen maar zeggen dat jij het nu 'normaal' brengt.

Jointjeff – 02/03/2008 23:38
@jopiedenogwat

Ik heb wel een vraag gesteld. Wat heb ik aan jou post? Niks.

Hoop dat er iemand is die het wel begrijpt en eventueel me verder kan helpen.

Ik heb zegmaar

naam
achternaam

bij de acteur

en bij de serie even voor het gemak

name
a_id (daar waar ik dus maar 1 id kan invullen, maar het er meerdere moeten zijn)
verhaal

Weet iemand nu wat ik bedoel ,en wat ik kan doen om het op te lossen?

nielsvdwal – 02/03/2008 23:44
een simpele manier is om een extra tabel te maken met serie_id en acteur_id.. en voor elke acteur/serie combinatie maak je een nieuwe veld aan..

zo kan je makkelijk de acteurs selecteren van een serie.. maar ook kijken in welke series die acteur allemaal zit..

en laat die jopiedinges maar lekker kletse.. komt niks zinnigs uit dat kind..

ranco – 02/03/2008 23:44
De fout zit hem in je table eigenschappen.
Waarschijnlijk heb je in de tabel series veldnaam 'name' als primary key staan (ff googlen als je niet weet wat dit is). Dit houdt in dat de naam van de serie maar 1 keer voor mag komen.

Voordat je tabellen in elkaar gaat zetten dien je te normaliseren (again, google is your friend). Hierbij wordt uitgegaan van een principe. Er mag niet een veel op veel relatie voorkomen. Dat is nu wel. Hoezo dan? Nou, let op:

In een serie spelen meerdere acteurs (veel) en acteurs kunnen in meerdere series spelen(veel).

Dit houdt in dat je een tussentabel moet maken. Neem de volgende velden:

- Serieid (Primary key), integer
- Acteurid (Primary key), integer

Nu kan een serie meerdere acteurs bevatten, en een acteur kan in meerdere series spelen.

Ik hoop dat je het een beetje snapt. Zo niet, dan moet je toch even wat tutorials lezen over normaliseren. Dan snap je het wel ;)

TriX – 03/03/2008 10:37 (Laatst gewijzigd op 03/03/2008 10:38)
Indd... Wat Ranco zegt is de juiste manier...

Wanneer 2 tabellen met elkaar gerelateerd zijn kan dat via een primary key... In jouw geval is het echter geen 1:1 relatie, geen 1:veel relatie maar een veel:veel relatie.

Nu moet je gebruik maken van een koppeltabel... Hierin zet je het id van de serie en het id van de acteur...

Bijv:

Serie1
Serie2
Serie3

Ateur1
Ateur2
Ateur3

In S1 speelt A1 en A2...
In S2 Speelt A2 en A3...
In S3 Speelt A1, A2 en A3...

Je data in je koppeltabel wordt dan zo:

S_id -- A_id
S1 ---- A1
S1 ---- A2
S2 ---- A2
S2 ---- A3
S3 ---- A1
S3 ---- A2
S3 ---- A3

Succes!

BonMarché – 03/03/2008 11:33
Wanneer twee tabellen een relatie hebben, gebruik je een foreign key. Verder met de twee hierboven.

nemesiskoen – 03/03/2008 11:42
Citaat:
Hierbij wordt uitgegaan van een principe. Er mag niet een veel op veel relatie voorkomen.

Euh, voor zover ik weet heeft dit niets met normaliseren te maken. Bij normaliseren ga je van volgende 2 principes uit: geen anomaliën en geen redundantie.
Veel op veel relaties tegengaan heeft eerder te maken met systeemanalyse dan met normaliseren. Verder wel een goede duidelijke tekst:-)


Gesponsorde links

Dit onderwerp is gesloten.
Actieve forumberichten:

© 2002-2012 Sitemasters.be - Regels - Gehost door: Vircon - Laadtijd: 0.027s