In MySQL heb ik twee tabellen:
Oftewel, een tabel met linkjes en een tabel met categorieën. Het idee is à la startpagina; er zijn 3 kolommen en in elke kolom zijn er een paar categorieën met een aantal linkjes.
Nu wil ik met één query alles uit de db trekken, en daarna presenteren op die pagina.
Met deze query
..krijg je een resultaat als dit:
En nu wil ik dus met deze ene query de hele pagina gaan vullen. De 3 kolommen zijn 3 cellen uit een tabel, de links staan per categorie in een <div>-je en de naam van de categorie komt bovenaan die <div>.
Ik heb me er suf aan gepiekerd, maar ik kan geen manier verzinnen om door de resultaten heen te lopen en ze te printen in de juiste volgorde en op de juiste positie.
Als eerste moet er dus de naam van de eerste categorie uit de eerste komen te staan, met daaronder de bijbehorende linkjes. Vervolgens kolom 1, categorie 2 enz.
code:
1
2
3
4
5
6
7
8
9
10
11
| +-------------------------+ | tableLinks | +----+-------+------+-----+ | id | titel | link | cat | +----+-------+------+-----+ +-----------------------------+ | tableCats | +----+------+-------+---------+ | id | naam | kolom | positie | +----+------+-------+---------+ |
Oftewel, een tabel met linkjes en een tabel met categorieën. Het idee is à la startpagina; er zijn 3 kolommen en in elke kolom zijn er een paar categorieën met een aantal linkjes.
Nu wil ik met één query alles uit de db trekken, en daarna presenteren op die pagina.
Met deze query
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| <? $qAlleLinks = mysql_query("SELECT l.id, l.titel, l.link, c.naam, c.kolom, c.positie FROM tableLinks l, tableCats c WHERE l.cat = c.id ORDER BY c.kolom, c.positie "); ?> |
..krijg je een resultaat als dit:
code:
1
2
3
4
5
6
7
8
9
10
11
12
| +----+-----------+----------------------+---------------+-------+---------+ | id | Titel | Link | Naam | kolom | positie | +----+-----------+----------------------+---------------+-------+---------+ | 1 | Altavista | http://www.av.com | Searchengines | 1 | 1 | | 2 | Yahoo | http://www.yahoo.com | Searchengines | 1 | 1 | | 3 | Ilse | http://www.ilse.nl | Searchengines | 1 | 1 | | 4 | Blaat | http://www.blaat.nu | Onzin | 1 | 2 | | 5 | Melp | http://www.melp.com | Onzin | 1 | 2 | | 6 | Huuu | http://www.huu.zuut | Hoi | 2 | 1 | | 7 | Huuu2 | http://www.hu2.zuut | Hoi | 2 | 1 | | 8 | Grrr | http://www.grrrrrrr | JaNee | 3 | 1 | +----+-----------+----------------------+---------------+-------+---------+ |
En nu wil ik dus met deze ene query de hele pagina gaan vullen. De 3 kolommen zijn 3 cellen uit een tabel, de links staan per categorie in een <div>-je en de naam van de categorie komt bovenaan die <div>.
Ik heb me er suf aan gepiekerd, maar ik kan geen manier verzinnen om door de resultaten heen te lopen en ze te printen in de juiste volgorde en op de juiste positie.
Als eerste moet er dus de naam van de eerste categorie uit de eerste komen te staan, met daaronder de bijbehorende linkjes. Vervolgens kolom 1, categorie 2 enz.