data uit meerdere tabellen op pagina tonen

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Davey Mat

Davey Mat

22/06/2013 15:48:47
Quote Anchor link
Hallo allemaal,

Ik probeer een in een tabel data uit meerdere tabellen weer te geven.
Ik heb een tabel members waar de voor en achternaam van een persoon staat.
Daarnaast een tabel handboek, waar de titels van ieder deel van het handboek in staan.
Als laatste een tabel handboekgelezen, waar (als een persoon uit members bevestigd een titel te hebben gelezen) de titelid en userid in worden gezet.
Nu probeer ik een overzicht te maken waarin iedere titel een eigen tabel krijgt, waarin iedere persoon wordt weergeven met een kruisje of vinkje (wel of niet gelezen) per titel.
Ik krijg het echter niet werkend omdat ik met onderstaande code maar 1 voornaam en achternaam krijg en de andere personen worden niet weergeven. Iedere titel wordt wel goed weergeven.
Ziet iemand de (waarschijnlijk stomme) fout?

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
        echo "<table border='1' cellpadding='10'>";        
        $query1 = "SELECT voornaam, achternaam FROM members";
        $query2 = "SELECT titel FROM handboek";    
    
       $sqltitel = mysql_query($query1) or die(mysql_error());
       $sqltitel2 = mysql_query($query2) or die(mysql_error());
        // loop through results of database query, displaying them in the table
        while($row = mysql_fetch_array( $sqltitel )){
        while($row2 = mysql_fetch_array( $sqltitel2 )) {
                
                // echo out the contents of each row into a table
                echo "<tr><th>Sectie</th>".
                '<td>' . $row2['titel'] . '</td><tr>'.
                '<tr><th>' . $row['voornaam'] . ' ' . $row['achternaam'] . '</th>'.
                '<td>'.
                //if gelezen show vinkje.png, else show error.png
                '</td></tr>';
        }
        }
Gewijzigd op 22/06/2013 15:50:49 door Davey Mat
 
PHP hulp

PHP hulp

29/03/2024 09:05:25
 
Obelix Idefix

Obelix Idefix

22/06/2013 16:02:29
Quote Anchor link
Op regel 9 start je een while-lus voor sqltitel2. Deze zal eerst volledig worden uitgevoerd, waarna de while-lus die je start op 8 de volgende 'ronde' in zal gaan.

De tabel handboekgelezen zie ik, zo snel, niet voorkomen in de code.

Ik zou een gaan kijken naar join.

Nog wat tips:
Probeer html (ook in echo-vorm) en php/mysql zo veel mogelijk te scheiden, zodat je overzicht houdt in de code.
Bouw goede foutafhandeling in: or die is dat niet. En ga zeker (in een live-omgeving) geen foutmeldingen tonen.
Wees daarnaast consequent in het gebruik van " en '.
Op regel 12 begin je een echo met " en gaat daarna op regel 13 over naar ' (bij de html code).
 
Davey Mat

Davey Mat

22/06/2013 16:19:52
Quote Anchor link
Bedankt voor je reactie Obelix en Idefix,

Als ik de while-lus van sqltitel2 omdraai met die van sqltitel dan krijg ik zowel van titel als van voornaam en achternaam maar 1 resultaat te zien. Vandaar dat ik nu de while-lus van sqltitel2 na sqltitel heb staan omdat dan in ieder geval iedere titel tevoorschijn komt.
Tabel handboekgelezen heb ik ook nog niet erin gezet omdat ik eerst bovenstaand probleem wil oplossen, mijn excuus voor het niet duidelijk zijn.

Over de tips:
Ik snap niet wat je bedoelt met meer overzicht creëren, heb je misschien een voorbeeld voor me?
En heeft dit nadelige effecten als ik bij de ene echo " gebruik en de andere '?

Bedankt
 
Obelix Idefix

Obelix Idefix

22/06/2013 16:50:52
Quote Anchor link
Met drie afzonderlijke query's (in een while-lus) ga je het volgens mij niet redden.
Google eens op join

Je hebt nu echo's en mysql-opdrachten door elkaar staan.
Overzichtelijker is het doorgaans om de pagina te beginnen met alle mysql en de gegevens die je dan wilt gebruiken op te slaan in een variabele. Kun je daarna met HTML (en css) de pagina opmaken/weergeven met hier en daar een echo van een variabele.
(mysql is overigens vervallen in versie 5.5: http://www.phphulp.nl/php/nieuws/php-550-officieel-uitgebracht/337/

Er schijnt een klein verschil te (kunnen) zijn tussen het gebruik van ' en " en daarnaast zal er verschil optreden als je op de verkeerde manier ' / " gebruikt in combinatie met variabelen in php.
Maar ongeacht of er een verschil is: wees voor jezelf uniform in wat je gebruikt. Als je straks moet debuggen, lijkt het mij een stuk eenvoudiger als je consequent bent in het gebruik.

(Hoeveel gegevens heb je momenteel in de diverse tabellen staan? Zet er eens een stuk of 10 in)
Gewijzigd op 22/06/2013 16:52:15 door Obelix Idefix
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

23/06/2013 07:22:11
Quote Anchor link
@Davey
Het is geen programmeerfout maar een denkfout.
Een fetch leest het huidige record uit een resource(c.g result/recordset) en verplaatst de cursor c.q. pointer naar het volgende record.
Als er geen volgend record meer is (EOF), levert dit dus false op.
Dus als je eerst 2 query's eerst uitvoert en dan in de while van de 1e recordset weer een while op de 2e recordset uitvoert, is op het 2e record van de eerste recordset het resultaat van de fetch op het tweede recordset altijd false of NULL.

Als ik je goed begrijp is dat je bij elke titel alle gebruikers wilt laten zien, en dan of de titel wel of niet gelezen is. Dit kan gewoon in zijn geheel in één query
Je krijgt dan ongeveer zo'n query:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
SELECT
    b.titel,
    m.voornaam,
    m.achternaam,
    IF(bg.boek_id IS NULL, 'Nee', 'Ja') AS gelezen
FROM
    handboek AS b
JOIN
    members AS m
LEFT JOIN
    handboekgelezen AS bg
    ON b.boek_id = bg.boek_id AND m.member_id = bg.member_id;

De eerste join heeft geen voorwaarden, dus aan elk boek worden alle gebruikers gekoppeld, dit noemt men een CROSS JOIN.
Daarna wordt met de LEFT JOIN gekeken of de combinatie boek_id, member_id in de handboekgelezen voorkomt.
 
Davey Mat

Davey Mat

24/06/2013 20:38:30
Quote Anchor link
Bedankt voor de reacties!
@Ger van Steenderen, het is inderdaag een denkfout die ik hier heb. Ik ben al wel verder gekomen.
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
       $query1 = "SELECT voornaam, achternaam FROM  members";
       $query2 = "SELECT titel FROM handboek";
       $sqltitel1 = mysql_query($query1) or die(mysql_error());
       $sqltitel2 = mysql_query($query2) or die(mysql_error());              
        echo '<table border="1" cellpadding="10">';
        //titels horizontaal
        echo '<tr>
                <th></th>';
               while($row2 = mysql_fetch_array( $sqltitel2 )) {
                echo '<td>' . $row2['titel'] . '</td>';
        }
        echo '</tr>';
        while($row1 = mysql_fetch_array( $sqltitel1 )) {
        //verticaal personen
        echo '<tr><th><span style="font-weight: normal;">' . $row1['voornaam'] . ' ' . $row1['achternaam'] . '</span></th>
        <td>' . $k . '</td></tr>';
        }            
        echo '</table>';

Zie hier een voorbeeld van wat mijn uiteindelijke doel is:
http://i.imgur.com/TBAl79y.png

De tabel zoals die in het plaatje te zien is krijg ik met bovenstaande code, enkel de getekende vinkjes en kruisjes moeten er nog bij. Om te kijken of iemand wel/niet een titel gelezen heeft moet dmv een query bepaald worden.
Ik wil dmv een ifje (if gelezen toon vinkje.png , else toon cross.png) laten zien wie iets wel/niet heeft gelezen.
Dit moet denk weer met een while loop die een waarde geeft op plek $k. Maar dan krijg ik een while in een while en dan is het hopeloos bij mij. Ik krijg het maar niet zoals ik het probeer te krijgen
Gewijzigd op 24/06/2013 20:41:35 door Davey Mat
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

24/06/2013 21:11:44
Quote Anchor link
Je kan hier gewoon mijn eerdere query gebruiken, en dan een sortering per member er aan toe voegen.
Je kan dan zelfs het te tonen plaatje door de query laten bepalen (vervang nee en ja in de if)
In php doorloop je dan de recordset en maak je een 'pointer' naar de gebruiker:
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
<?php
$member
= 'john doe';
$tr = '<tr>'
while ($row = mysql_fetch_assoc($result) {
    if ($member != $row['voornaam'] . ' ' . $row['achternaam']) {
        echo $tr;
        $tr = '</tr><tr>';
        $member = $row['voornaam'] . ' ' . $row['achternaam'];
        echo '<td>' . $member . '</td>';
    }

    echo '<td>' . $gelezen . '</td>';
}

echo '</tr>';
?>


PS.
Het is eenvoudiger om het member_id mee te nemen in de select en daar op te controleren.
Gewijzigd op 24/06/2013 21:18:23 door Ger van Steenderen
 
Davey Mat

Davey Mat

25/06/2013 00:52:58
Quote Anchor link
Heel erg bedankt tot nu toe Ger!
Je query werkt perfect!
Ik snap enkel je laatste bericht niet helemaal.
Ik snap denk ongeveer de bedoeling, maar krijg het niet werkend in mijn stukje code.
Wat ik dus nu heb aan code:
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
<php
       $query1 = "SELECT voornaam, achternaam FROM  members";
       $query2 = "SELECT titel FROM handboek";
       $query3 = "SELECT b.titel,m.voornaam,m.achternaam,m.id,IF(bg.handboekid IS NULL, '<img src=\"img/Error.png\" >', '<img src=\"img/Check.png\" >') AS gelezen FROM handboek AS b JOIN members AS m LEFT JOIN handboekgelezen AS bg ON b.id = bg.handboekid AND m.id = bg.userid;";
       $sqltitel1 = mysql_query($query1) or die(mysql_error());
       $sqltitel2 = mysql_query($query2) or die(mysql_error());
          $sqltitel3 = mysql_query($query3) or die(mysql_error());              
        echo '<table border="1" cellpadding="5">';
        //titels horizontaal
        echo '<tr>
                <th></th>';
               while($row2 = mysql_fetch_array( $sqltitel2 )) {
                echo '<td>' . $row2['titel'] . '</td>';
        }
        echo '</tr>';
        while($row1 = mysql_fetch_array( $sqltitel1 )) {
        //verticaal personen
        echo '<tr><th><span style="font-weight: normal;">' . $row1['voornaam'] . ' ' . $row1['achternaam'] . '</span></th>';
        while($row3 = mysql_fetch_array( $sqltitel3 )) {
        echo '<td>' . $row3['gelezen'] . '</td>';
        }
        echo '</tr>';
        }            
        echo '</table>';
?>


En ik krijg dit als resultaat: http://imgur.com/YCNRd9z

Als ik 'tel', waar het kruisje of vinkje moet komen te staan in de tabel klopt het met de gegevens uit de database, alleen ik moet dus per resultaat een rij omlaag en na 3 resultaten een kolom naar rechts opschuiven.
Als ik dus jouw laatste voorbeeld een beetje snap wil je dit al doen, maar het lukt me niet.
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

25/06/2013 07:26:26
Quote Anchor link
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
SELECT
    b.titel,
    m.member_id,
    m.voornaam,
    m.achternaam,
    IF(bg.boek_id IS NULL, 'Error.pnp', 'Check.png') AS gelezen
FROM
    handboek AS b
JOIN
    members AS m
LEFT JOIN
    handboekgelezen AS bg
    ON b.boek_id = bg.boek_id AND m.member_id = bg.member_id;
ORDER BY m.achternaam

Deze query voorziet je van alle informatie die nodig is, dus heb je de eerste 2 queries niet nodig.
Je krijgt dan een resultaat met per gebruiker alle boektitels met gelezen/niet gelezen.
Omdat je die boektitels in de table head wilt hebben moet je de gegevens in variabelen opslaan, en deze na de while lus echoën:
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
<?php
$member
= 0; //dit is de pointer om bij te houden met welk lid we werken
$tr = '<tr>';
$tbody = ''; //voor de rijen van de tabel
while ($row3 = mysql_fetch_assoc($sqltitle3)) {
    //controleer of het een ander lid is
    if ($row3['member_id'] !== $member) {        
        $tbody .= $tr . '<td>' . $row['voornaam'] . ' ' . $row['achternaam'] . '</td>';
        $member = $row3['member_id'];
        $tr = '</tr><tr>';
        $thead = '<tr><td>&nbsp;</td>'; //de head voor de titels
    }
    $thead .= '<td>' . $row['titel'] . '</td>';
    $tbody .= '<td><img src="img/' . $row3['gelezen'] . '"></td>';
}

echo $thead . '</tr>';
echo $tbody . '</tr>';
?>

Let op dat ik in de query nu gesorteerd heb op lid.
Gewijzigd op 25/06/2013 07:29:43 door Ger van Steenderen
 
Davey Mat

Davey Mat

25/06/2013 21:32:21
Quote Anchor link
Hee Ger, heel erg bedankt voor je hulp en geduld, maar ik snap het nog steeds niet helemaal, sorry.

Waar moet ik bijvoorbeeld dat stukje code zetten in mijn code?
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

26/06/2013 07:05:43
Quote Anchor link
In plaats van regel 9 t/m 23. Regels 2,3,5 en 6 heb je ook niet meer nodig.
Niet vergeten om de $query3 aan te passen, anders werkt bovenstaande code niet goed.
 
Davey Mat

Davey Mat

26/06/2013 12:37:28
Quote Anchor link
Hee Ger,
Ik heb gedaan wat je zei maar ik krijg nu dit:
http://imgur.com/LxaE9ms

Mijn code:
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
<?php
       $query3
= "
    SELECT
    b.titel,
    m.id,
    m.voornaam,
    m.achternaam,
    IF(bg.handboekgelezenid IS NULL, 'Error.png', 'Check.png') AS gelezen
FROM
    handboek AS b
JOIN
    members AS m
LEFT JOIN
    handboekgelezen AS bg
    ON b.handboekid = bg.handboekgelezenid AND m.id = bg.userid
ORDER BY m.achternaam"
;
          $sqltitel3 = mysql_query($query3) or die(mysql_error());              
        echo '<h1><img src="/img/titel/Info.png" />Handboek secties gelezen per persoon</h1><hr>';
        echo '<p>Een weergave van wie wel en wie niet delen van het handboek heeft gelezen.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="handboek_personeel_beheer.php">Klik hier om terug te gaan naar handboek beheer.</a></p>';
        echo '<table border="1" cellpadding="5">';
        //titels horizontaal
$member = 0; //dit is de pointer om bij te houden met welk lid we werken
$tr = '<tr>';
$tbody = ''; //voor de rijen van de tabel
while ($row3 = mysql_fetch_assoc($sqltitel3)) {
    //controleer of het een ander lid is
    if ($row3['id'] !== $member) {        
        $tbody .= $tr . '<td>' . $row['voornaam'] . ' ' . $row['achternaam'] . '</td>';
        $member = $row3['id'];
        $tr = '</tr><tr>';
        $thead = '<tr><td>&nbsp;</td>'; //de head voor de titels
    }
    $thead .= '<td>' . $row['titel'] . '</td>';
    $tbody .= '<td><img src="img/' . $row3['gelezen'] . '"></td>';
}

echo $thead . '</tr>';
echo $tbody . '</tr>';    
        echo '</table>';
?>


Daarnaast heb ik printscreens gemaakt van mijn database tabellen:
Tabel handboek: http://imgur.com/rHAhMkp
Tabel handboekgelezen: http://imgur.com/3XOmIfR
Tabel members: http://imgur.com/nkolAvg

Hopelijk heb je hier iets aan?
Gewijzigd op 26/06/2013 15:17:36 door Davey Mat
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

26/06/2013 15:04:20
Quote Anchor link
Zet voortaan ook even de php tags in je code blok, is het wat makkelijker te lezen.
Maar ik denk dat je ergens <table> vergeet.
Ik heb het getest en ik krijg netjes een tabel, je moet alleen ORDER BY m.achternaam, b.titel gebruiken, anders komen de titels per gebruiker in een andere volgorde te staan.
 
Davey Mat

Davey Mat

26/06/2013 15:20:31
Quote Anchor link
Op lijn 20 staat mijn <table> tag. Anders kwam het ook niet in een tabel zoals je op de printscreen kan zien die ik bij mijn vorige bericht heb gepost.
Het probleem moet ergens anders zitten. Waarschijnlijk de query, omdat het scriptje wel bij jou werkt?
-------------------------
Update:
Ik zie dat variabele $row nog werd gebruikt, dit moest natuurlijk $row3 zijn, maar nu zijn de vakken nog steeds verdeeld zoals op laatste printscreen, ik zie ook meerdere keren voor + achternaam van een persoon en niet eenmalig. Ik kijk ondertussen nog even verder waar een fout kan zitten.

Hier de huidige code
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
<?php
       $query
= "
    SELECT
    b.titel,
    m.id,
    m.voornaam,
    m.achternaam,
    IF(bg.handboekgelezenid IS NULL, 'Error.png', 'Check.png') AS gelezen
FROM
    handboek AS b
JOIN
    members AS m
LEFT JOIN
    handboekgelezen AS bg
    ON b.handboekid = bg.handboekgelezenid AND m.id = bg.userid
ORDER BY m.achternaam, b.titel"
;
$sqltitel = mysql_query($query) or die(mysql_error());    
$member = 0; //dit is de pointer om bij te houden met welk lid we werken
$tr = '<tr>';
$tbody = ''; //voor de rijen van de tabel      
echo '<h1><img src="/img/titel/Info.png" />Handboek secties gelezen per persoon</h1><hr>';
echo '<p>Een weergave van wie wel en wie niet delen van het handboek heeft gelezen.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="handboek_personeel_beheer.php">Klik hier om terug te gaan naar handboek beheer.</a></p>';
echo '<table border="1" cellpadding="5">';
while ($row = mysql_fetch_assoc($sqltitel)) {
    //controleer of het een ander lid is
    if ($row['id'] !== $member) {        
        $tbody .= $tr . '<td>' . $row['voornaam'] . ' ' . $row['achternaam'] . '</td>';
        $member = $row['id'];
        $tr = '</tr><tr>';
        $thead = '<tr><td>&nbsp;</td>'; //de head voor de titels
    }
    $thead .= '<td>' . $row['titel'] . '</td>';
    $tbody .= '<td><img src="img/' . $row['gelezen'] . '"></td>';
}

echo $thead . '</tr>';
echo $tbody . '</tr>';    
        echo '</table>';
?>
Gewijzigd op 26/06/2013 15:28:51 door Davey Mat
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

26/06/2013 16:41:50
Quote Anchor link
Ik had snel even een paar tabellen gemaakt om te kunnen testen, en ik zie zo snel ook niet wat er mis zou kunnen zijn, of het moet zijn dat je de img tag moet afsluiten (/>)
 
Erwin H

Erwin H

26/06/2013 16:54:29
Quote Anchor link
Volgens mij gaat je table niet kloppen als de gebruiker wel een member is. Dan wordt alleen deze regel uitgevoerd:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
$thead
.= '<td>' . $row['titel'] . '</td>';
?>

waarbij $thead nog leeg is. Die row wordt dus nooit geopend (geen tr tag), maar wel gesloten. Geen idee hoe dat zal worden geinterpreteerd door de browser.
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

26/06/2013 17:02:12
Quote Anchor link
Nee dat is het niet, dat gebeurt binnen if($row['id'] !== $member) op regel 30.
Gewijzigd op 26/06/2013 17:04:11 door Ger van Steenderen
 
Erwin H

Erwin H

26/06/2013 20:01:22
Quote Anchor link
Maar daar gaat wel iets fout.

Dit is de rij voor als $row['id'] !== $member:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
'<td>' . $row['voornaam'] . ' ' . $row['achternaam'] . '</td><td><img src="img/' . $row['gelezen'] . '"></td>';
?>

Dit is de rij anders:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
'<td><img src="img/' . $row['gelezen'] . '"></td>'
?>

Oftewel, je krijgt sommige rijen met 1 cell en andere met 2, dat gaat zich niet mooi uitlijnen.

En als ik nu begrijp hoe die tabel wordt opgebouwd dan is het hele head verhaal een beetje onzin om dat binnen die while te doen. Er wordt maar 1 head rij aangemaakt, ongeacht het aantal rijen. Maak die dan gewoon na de while loop aan.
Gewijzigd op 26/06/2013 20:01:51 door Erwin H
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

26/06/2013 20:34:50
Quote Anchor link
Toch zie je het niet goed, er zit een cross join op de tabel members en handboeken, dus alle members krijgen alle boeken, daarna wordt via de left join bepaald of een handboek al dan niet gelezen is.
Zie hier voor een voorbeeld van het resultaat van de query.

Ik ben blij dat je meedenkt, maar de fout zit niet in het genereren van de tabel, als ik het uit test krijg ik gewoon een tabel met 3 gebruikers en (in mijn geval) 7 boeken.
 
Davey Mat

Davey Mat

27/06/2013 19:54:29
Quote Anchor link
Hee Ger,

Ik heb net mijn database een beetje opgeschoond en tot mijn verbazing werkt de tabel opeens!
Dus voor nu ziet het er goed uit en daarvoor erg veel dank voor je hulp!

Ik ga nu een maand met vakantie dus ik zal het niet verder kunnen testen of het ook zeker weten werkt.
Als er problemen zijn zal ik het eerst zelf proberen op te lossen en anders horen jullie van mij via het forum;)

Nogmaals hartelijk dank!
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.