Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

[MySQL] 2koloms-tabel weergeven in grid

Pagina: 1
Acties:

  • sjunnie
  • Registratie: September 2001
  • Laatst online: 19-11 18:32

sjunnie

U mag ook Sjun zeggen

Topicstarter
Ik probeer een overzicht te maken van personen welke bepaalde sleutels hebben, tot nu toe heb ik dit in een excel bestand staan, maar wil dit graag in een MySQL database hebben om weer te geven middels een PHP script.

Ik heb nu 3 tabellen aangemaakt;

personen
persoonid
naam


sleutels
sleutelid
sleutelcode
omschrijving


sleutelhouders
persoonid
sleutelid


Voor iedere willekeurige combinatie van persoon/sleutel staat er dus een rij in die laatste tabel, nu wil ik dit weer gaan weergeven in een HTML-tabel.
Om voor iedere gebruiker extra sleutel kolommen te maken in de personentabel is geen optie aangezien de mogelijkheid moet blijven bestaan om sleutels toe te voegen of weg te nemen.

Ik heb al van alles geprobeerd met bijvoorbeeld joins en group by, maar ik kom hier niet uit.
Ik wil natuurlijk niet de tabel personen doorlopen en daarin voor iedere persoon een query maken om de sleutels op te halen.

In feite wil ik dus een multidimensionale array ophalen met een array met alle gebruikers, waarin zich telkens weer een array bevindt met alle sleutels welke hij/zij bezit.
tenminste, zo denk ik dat ik het met PHP moet gaan doorlopen.

janpietjoris
1X
2XX
3X



Is mijn insteek de juiste? en hoe moet een dergelijke query er dan uitzien?
Misschien is er wel een veel betere oplossing voor mijn probleem, dat hoor ik dan natuurlijk graag :)

edit: wellicht had ik dit topic beter in programmeren kunnen plaatsen, als een modje aub zo vriendelijk wil zijn... O+

If you can judge a wise man by the color of his skin then mister you're a better man than I


  • alt-92
  • Registratie: Maart 2000
  • Niet online

alt-92

ye olde farte

sjunnie schreef op dinsdag 18 maart 2008 @ 15:44:
edit: wellicht had ik dit topic beter in programmeren kunnen plaatsen, als een modje aub zo vriendelijk wil zijn... O+
Daar kun je dan beter een TopicReport voor gebruiken :)
Hoeft nu niet meer, want die is al aangemaakt - gewoon even wachten op een WSS modje dus :)

ik heb een 864 GB floppydrive! - certified prutser - the social skills of a thermonuclear device


  • sjunnie
  • Registratie: September 2001
  • Laatst online: 19-11 18:32

sjunnie

U mag ook Sjun zeggen

Topicstarter
*schopje*

If you can judge a wise man by the color of his skin then mister you're a better man than I


  • sanfranjake
  • Registratie: April 2003
  • Niet online

sanfranjake

Computers can do that?

(overleden)
Sorry, erg druk gehad de afgelopen dagen en je topicreport niet gezien...
Windows Servers en Server-software > Programming

Mijn spoorwegfotografie
Somda - Voor en door treinenspotters


  • Duroth
  • Registratie: Juni 2007
  • Laatst online: 27-04-2016

Duroth

No rest for the tweaked

Uitgaande van je Sleutelhouders tabel, kan je er met een simpele inner join de namen van de personen bij betrekken:
code:
1
2
3
4
5
6
7
persoonID | sleutelID | naam
-----------------------------
1         | 1         | Jan
1         | 2         | Jan
2         | 3         | Piet
3         | 1         | Joris
3         | 3         | Joris


Vervolgens kan je er een recursieve array van maken, iets in de trend van
PHP:
1
2
$array[$rij][$kolom]
# b.v. $array[1]['Jan'] , $array[1]['Piet'], etc


Deze array is vervolgens erg makkelijk met een foreach loopje om te zetten naar een HTML tabelletje. Of het de snelste methode is, weet ik niet, maar het is in mijn ogen in ieder geval de meest leesbare.