PDO transaction prepared statements

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Traineeship Full Stack Java developer

Dit ga je doen Start jij op 7 augustus bij de Experis Academy dan kickstart jij jouw IT-carrière! We leiden je op tot een gewilde Full Stack Java Developer met alle kennis en vaardigheden die nodig zijn om de arbeidsmarkt te betreden. Wat kun je verwachten, hoe zit een dag in het leven van een Trainee eruit? Periode 1 Als Full Stack Java Developer Trainee volg je vanuit huis een op maat gemaakte onlinetraining die in het Engels wordt gegeven. De tijd die je kwijt bent aan het volgen van de training kun je vergelijken met een fulltime werkweek. In

Bekijk vacature »

.NET developer

Functie Voor jou als junior .NET ontwikkelaar staat er een flinke uitdaging klaar bij dit bedrijf waar jij veel van kan gaan leren. Zo willen zij een flinke uitbreiding doen op het webbased gedeelte dat zij nu hebben en willen zij het standaard deel gaan moderniseren. Jouw team is dan ook op zoek naar een junior .NET ontwikkelaar die het leuk vindt om op basis van research en development aan de slag te gaan. Jouw mening telt mee als het gaat om hoe en met wat deze applicaties gebouwd en herschreven gaan worden. Jouw functie bij dit bedrijf gaat dan

Bekijk vacature »

Sportieve Junior C#.NET developer gezocht!

Bedrijfsomschrijving Wil jij werken aan webapplicaties bij de marktleider binnen de branche? Voor een klant in de buurt van Oosterhout ben ik op zoek naar een Fullstack .NET developer. Dit bedrijf bestaat bijna 10 jaar en is inmiddels uitgegroeid tot marktleider in Nederland en heeft tevens kantoren in meerdere landen in Europa. Dit bedrijf bouwt webapplicaties waarbij internationaal enkele honderdduizenden deelnemers, soms tegelijk, een beroep doen op de realtime data uit deze applicaties. Dit brengt erg veel technische uitdaging met zich mee. Ze ontwikkelen nieuwe applicaties maar ook bestaande applicaties worden uitgebreid en verbeterd. Hier kan jij een onderdeel van

Bekijk vacature »

.NET developer

Klaar voor een nieuwe uitdaging? Welke technologieën gaan schuil achter de dagelijkse energievoorziening? Als senior .NET developer bij Kenter maak jij samen met je team het verschil, zowel voor de interne organisatie als voor eindklanten. Samen bouwen jullie aan innovatieve dienstverlening met behulp van de nieuwste technologieën en tools. Het is een functie met veel vrijheid, goede arbeidsvoorwaarden én je draagt jouw steentje bij aan de energietransitie. Klinkt dit als iets voor jou? Lees dan verder of solliciteer direct! Wat ga je doen als senior .NET developer? Als senior .NET developer bij Kenter (onderdeel van Alliander) ben je van onschatbare

Bekijk vacature »

Fullstack developer - medior

Functie omschrijving Ben jij toe aan een nieuwe uitdaging en zou jij graag bij een platte maar informele organisatie willen werken? Voor een mooi softwarebedrijf in omgeving Ridderkerk zijn wij op zoek naar versterking voor op de afdeling Software Development! Als Fullstack developer wordt je bij dit bedrijf onderdeel van de volledige ontwikkeling van requirement tot oplevering! Werkzaamheden Jouw focus ligt op de front end en alles wat daarbij komt kijken. Je gaat ontwerpen, ontwikkelen, testen en valideren. Je zult voornamelijk werken met React.js en Typescript. Maar ook Javascript, HTML en CSS komen aanbod. Daarnaast zal je ook regelmatig met

Bekijk vacature »

Full stack .NET developer Microsoft 365

Wat ga je doen als Full stack .NET developer Microsoft 365? Je stelt je op als sparringpartner voor het team en PO over toekomstige functionaliteiten, architectuur en mogelijke nieuwe producten. Je bent mede-verantwoordelijk voor het vertalen en omzetten van een user story in een passend technisch design. Je implementeert functionaliteiten op basis van een technisch design en user story. Je bent mede-verantwoordelijk voor het beheer van Azure DevOps, waaronder het beheer van GIT, Build Pipelines, Release Pipelines en geautomatiseerde testen. Hier herken jij jezelf in Hbo werk- en denkniveau of hoger aangevuld met relevante certificeringen en/of cursussen; Minimaal 3 jaar

Bekijk vacature »

C# Developer

Functie omschrijving Voor een softwarebedrijf in de omgeving van Veghel zijn we op zoek naar een C# developer. Word jij blij van ontwikkelen in C# en .NET? Lees dan snel verder! Jouw werkzaamheden zullen er als volgt uit gaan zien: Door middel van ASP.NET, MVC Framework en C# ga je webshops, websites en webapplicaties ontwikkelen. Je zorgt voor de optimalisatie van bestaande software en de automatisering van bedrijfsprocessen. Op basis van de wensen van de klant ga je samen met je collega's ga je op zoek naar de juiste oplossingen en je gaat dit uitwerken tot een mooi eindproduct. Bedrijfsprofiel

Bekijk vacature »

Lead developer

Functie Als lead developer wordt jij verantwoordelijk voor een van onze development teams. Samen met de Software Architect bewaak jij de kwaliteit en uitvoering van onze complexe vraagstukken. Daarnaast ben jij verantwoordelijk voor het inschatten, designen en ontwikkelen van middelgrote tot grote veranderingen in de software. Ook coördineer jij het proces rondom complexe technische vraagstukken. Verder bestaat jouw takenpakket uit het volgende: – Het aansturen van jouw development team; – Het begeleiden van Junior Software Engineers; – Het maken van technische analyses m.b.t. nieuwe aanvragen en het tijdsbestek inschatten voor de uitvoering hiervan; – Het uitvoeren van de ontwikkeling van

Bekijk vacature »

Junior / Medior C# .NET ontwikkelaar in Brabants t

Bedrijfsomschrijving Ben jij een gepassioneerde C# .NET ontwikkelaar met een voorliefde voor hardware? Dan is dit de perfecte kans voor jou! Bij ons bedrijf krijg je de kans om deel uit te maken van een team van sociale en enthousiaste techneuten die er elke dag naar streven om onze eigen ontwikkelde software nog beter te maken. Het team van ongeveer 10 team medewerkers maakt zich hard om de interne processen gestroomlijnd te laten verlopen. Functieomschrijving Als lid van ons hechte en behulpzame team word je betrokken bij diverse projecten. Daarbij krijg je te maken met data-analyses, content en de logistieke

Bekijk vacature »

Cobol Developer

Dit ga je doen Als Cobol Ontwikkelaar zal je gaan meebouwen aan een onderdeel van het backend systeem waarbij je het functionele ontwerp vertaald naar een technische oplossing die geïntegreerd kan worden in de huidige omgeving. Je zorgt ervoor dat de bedrijfsprocessen op een efficiënte manier worden uitgevoerd en werkt proactief aan het verbeteren hiervan. Samen met jouw collega’s reviewen jullie elkaars code en test je je eigen code. Je werkt nauw samen met andere ontwikkelaars, testers en functioneel ontwerpers. Taken pakket: Beheren en doorontwikkelen van de bestaande omgeving; Vertalen van een functionele vragen naar een technische oplossing; Doorvoeren van

Bekijk vacature »

High level C++ QT Developer

Vacature details Vakgebied: Software/IT Opleiding: Senior Werklocatie: Eindhoven Vacature ID: 13486 Introductie Would you like to be involved in every aspect of software development for our exceptional products, from specification and design to testing and integration? If you're passionate about software development and eager to apply your programming skills to create customer-focused deliverables, then this is the perfect chance for you to expand your expertise. You can become a member of our Machine Control department's data-driven development team, where you'll design and build software solutions that optimize machine productivity. As a senior software design engineer, you'll participate in all phases

Bekijk vacature »

PHP Web Developer

Functie omschrijving Voor een klein softwarebedrijf in de omgeving Roosendaal, zijn wij op zoek naar een PHP web developer met een aantal jaar werkervaring. Wil jij graag werken aan in-house software projecten voor diverse klanten? Voel jij je prettige in een klein team developers, waar jouw inbreng enorm gewaardeerd wordt? Lees dan snel verder! Jouw werkzaamheden zien er als volgt uit: Je wordt verantwoordelijk voor de ontwikkeling van diverse applicaties. Dit kan de ene keer een online platform voor aanbiedingen zijn, en de andere keer een software pakket dat gebruikt wordt om interne processen te automatiseren. Het zijn stuk voor

Bekijk vacature »

Software Developer PHP

Functie omschrijving We are looking for a dutch native speaker Voor een opdrachtgever in de regio van Geldrop ben ik op zoek naar een Software Developer PHP. Jij krijgt een rol met veel verantwoordelijkheid in een groeiende organisatie. In deze functie werkt je voornamelijk remote en op een vast moment kom je met het team samen, om samen te werken en nieuwe doelen te bepalen. Wat ga je doen? Je wordt verantwoordelijk voor de interne applicatie; Je zorgt voor de doorontwikkeling van de applicatie: zowel back-end, front-end; De basis van het werk betreft front-end technieken; Periodiek bepaal je samen met

Bekijk vacature »

Software Developer

Bij een bedrijf in de machinebouw, regio Roosendaal, zijn we op zoek naar een: Software Developer Waar ga je werken? Onze opdrachtgever is gespecialiseerd in de grondverzetmachines. Al meer dan 50 jaar leveren ze zowel nationaal als internationaal diverse machines. Het is een familiebedrijf met een informele werksfeer. Wat ga je doen? Als Software Developer je verantwoordelijk voor: - Je werkt voortdurend aan oplossingen voor het op afstand bewaken en besturen van oogstmachines; - Het visualiseren van gegevens in rapporten, apps of andere formaten; - Voorspellend machineonderhoud; - Taakplanning; - Je schrijft aangepaste plug-ins om gegevens te importeren of exporteren

Bekijk vacature »

C#.NET ontwikkelaar

Functie omschrijving Voor een softwarebedrijf in de omgeving van Veghel zijn we op zoek naar een C# developer. Word jij blij van ontwikkelen in C# en .NET? Lees dan snel verder! Jouw werkzaamheden zullen er als volgt uit gaan zien: Op basis van de wensen van de klant ga je samen met je collega's ga je op zoek naar de juiste oplossingen en je gaat dit uitwerken tot een mooi eindproduct. Je bouwt webshops, webapplicaties en websites, dit doe je door middel van ASP.NET, MVC Framework en C#. Je zorgt voor de optimalisering van bestaande software en de automatisering van

Bekijk vacature »

Pagina: 1 2 volgende »

Michael -

Michael -

23/04/2014 13:33:57
Quote Anchor link
Allen,

Op de bekende zoekmachine kom ik genoeg voorbeelden tegen van prepared statements i.c.m. transactions.
Maar toch werkt bij mij de rollback niet. Een exception op de 2e tabel, terwijl de 1e wel is toegevoegd.

Kan iemand mij uitleggen wat er fout gaat? Dit is de eerste keer dat ik transactions wil gebruiken.

Ingekort voorbeeld:
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
<?php
try
{
    $db->beginTransaction();

    $sql = "
    INSERT
        INTO "
. TABLE_PREFIX . "profile
        (
            naam
        )
        VALUES
        (
            :naam
        )
    "
;
    
    $stmt = $db->prepare($sql);
    
    $stmt->bindParam(':naam', $_POST['gegevens']['naam'], PDO::PARAM_STR);

    $stmt->execute();
    
    $profile_id = $db->lastInsertId();
    
    $sql = "
    INSERT
        INTO "
. TABLE_PREFIX . "application
        (
            profile_id
        )
        VALUES
        (
            :profile_id
        )
    "
;
    
    $stmt = $db->prepare($sql);
    
    $stmt->bindParam(':profile_id', $profile_id, PDO::PARAM_INT);

    $stmt->execute();
    
    $db->commit();
}

catch(PDOException $e)
{

    if(isset($db))
    {

        $db->rollBack();
    }
}

?>


Bvd
 
PHP hulp

PHP hulp

17/11/2024 03:47:25
 
Erwin H

Erwin H

23/04/2014 14:41:53
Quote Anchor link
Welke storage engine gebruik je? Niet elke storage engine ondersteunt transactions (MyISAM, de standard, in elk geval niet).
 
Michael -

Michael -

23/04/2014 14:48:05
Quote Anchor link
Dat verander ik eigenlijk nooit, dus standaard MyISAM.
Dan kan ik lang blijven zoeken als het daarop niet werkt.

Welke raad je wel aan te gebruiken?

Ik heb de volgende keuzes
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
<select name="new_tbl_type">
    <option value="MRG_MYISAM" title="Collection of identical MyISAM tables">
        MRG_MYISAM
    </option>
    <option value="BLACKHOLE" title="/dev/null storage engine (anything you write to it disappears)">
        BLACKHOLE
    </option>
    <option value="CSV" title="CSV storage engine">
        CSV
    </option>
    <option value="MEMORY" title="Hash based, stored in memory, useful for temporary tables">
        MEMORY
    </option>
    <option value="ARCHIVE" title="Archive storage engine">
        ARCHIVE
    </option>
    <option value="MyISAM" title="Default engine as of MySQL 3.23 with great performance" selected="selected">
        MyISAM
    </option>
</select>
Gewijzigd op 23/04/2014 14:49:04 door Michael -
 
Erwin H

Erwin H

23/04/2014 15:14:50
Quote Anchor link
Uhm.... dan heb je denk ik geen enkele engine die transactions ondersteunt. InnoDB is de meeste gebruikte die het ondersteunt (en die meestal wel geinstalleerd is), maar die zie ik er ook niet tussen staan.

Hier een lijstje met engines van Wikipedia: http://en.wikipedia.org/wiki/Comparison_of_MySQL_database_engines
 
Michael -

Michael -

23/04/2014 15:23:41
Quote Anchor link
Ik kan me InnoDB wel herinneren, maar zie hem er nu inderdaad niet (meer) tussen staan.
Misschien eens contact opnemen met m'n hosting of hun wat voor me willen/kunnen doen.

Bedankt voor je reactie in ieder geval. Ik weet nu in ieder geval waar het probleem ligt.

Toevoeging op 23/04/2014 15:51:54:

Ik krijg als antwoord van de support om de 'MariaDB database (BETA)' te gebruiken die wel InnoDB ondersteund.
Wat vinden jullie van MariaDB en is het verschil met MySQL erg groot?
 
Erwin H

Erwin H

23/04/2014 16:03:05
Quote Anchor link
Geen ervaring mee, maar een snelle blik op de Wikipedia pagina ( http://en.wikipedia.org/wiki/MariaDB ) leert dat het wel goed zou moeten zitten. Ontwikkeld door hetzelfde team als dat MySQL heeft ontwikkeld. Ik kan alleen zo snel niet vinden welke php mogelijkheden er zijn, maar iets zegt me dat je gewoon PDO moet kunnen gebruiken.
Gewijzigd op 23/04/2014 16:03:24 door Erwin H
 
Michael -

Michael -

23/04/2014 16:11:50
Quote Anchor link
Blijkbaar is het een kopie, maar vanuit daar verder ontwikkelt. Dus is het eigenlijk MySQL maar met extra functies.
Ik ga morgen verder kijken hoe ik kan overschakelen.
Quote:
The goal for Maria-DB is to be a drop-in replacement for MySQL – with more features and better performance.

MariaDB is based on the corresponding version of MySQL, if one exists. For example, MariaDB 5.1.53 is based on MySQL 5.1.53, with some added bug fixes, additional storage engines, new features, and performance improvements. Versions of MariaDB that do not have an equivalently numbered version of MySQL (e.g., MariaDB 5.2.4) contain major new features the developers felt warranted a new version number. When comparing the two here, I’ll focus on the additional features of MariaDB.

bron
 
Ozzie PHP

Ozzie PHP

23/04/2014 16:31:04
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

23/04/2014 18:28:34
Quote Anchor link
Ik vind het wel typisch dat een hosting adviseert om MariaDb te gaan gebruiken omdat de MySQL versie die zij draaien geen InnoDB engine heeft. Welke versie is dat?
 
Ward van der Put
Moderator

Ward van der Put

23/04/2014 19:08:36
Quote Anchor link
Waar Ger nog aardig "typisch" schrijft, zou ik "verontrustend" invullen.
 
Michael -

Michael -

23/04/2014 20:09:08
Quote Anchor link
Ozzie, bedankt. Dat maakt in ieder geval duidelijk dat je om mariadb te gebruiken niks hoeft aan te passen. Dus heb er zeker wat aan.

Ger & Ward, ja bijzonder is t wel. Ik weet ook niet hoeveel werk het voor hun is om InnoDB op MySQL te installeren? Ze kunnen vast niet aan alle gebruikerswensen gehoor geven.

Ger, Welke versie MySQL? Waar kan ik dat vinden? In phpinfo() staat 'MySQL Client API version 5.5.35' en in phpmyadmin staat 'MySQL-client versie: 5.1.72'.

Edit:

Voor de MySQL is het versie 5.1.73
Voor MariaDB is de MySQL versie 5.5.36


Toevoeging op 23/04/2014 20:33:23:

Ik heb zojuist een database aangemaakt in MariaDB er hier de tabellen in geïnstalleerd.
Standaard staat deze engine wel op InnoDB en de rollback werkt! :)
Gewijzigd op 23/04/2014 20:15:26 door Michael -
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

23/04/2014 21:21:54
Quote Anchor link
Volgens mij kan je in PMA (ik gebruik dat bij voorkeur niet) boven aan de pagina zien welke server versie gebruikt wordt van MySQL
Voor een zichzelf respecterende hosting provider zou dat op zijn minst 5.5 moeten zijn
Gewijzigd op 23/04/2014 21:31:10 door Ger van Steenderen
 
Ward van der Put
Moderator

Ward van der Put

24/04/2014 07:27:02
Quote Anchor link
Je kunt de MySQL-versie ook controleren met:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
SELECT VERSION();

Om de engines te tonen gebruik je:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
SHOW ENGINES;

Ger van Steenderen op 23/04/2014 21:21:54:
Volgens mij kan je in PMA (ik gebruik dat bij voorkeur niet) boven aan de pagina zien welke server versie gebruikt wordt van MySQL
Voor een zichzelf respecterende hosting provider zou dat op zijn minst 5.5 moeten zijn

Inderdaad, en als dat minimaal MySQL 5.5 is, dan wordt het alleen nog vreemder: vanaf versie 5.5 is InnoDB namelijk de standaard engine...
 
Michael -

Michael -

24/04/2014 09:26:03
Quote Anchor link
Ik had in een eerdere post al de versies en engines genoemd.
MySQL heeft versie 5.1.73
MariaDB heeft MySQL versie 5.5.36 (Standaard InnoDB inderdaad).
 
Reshad F

Reshad F

24/04/2014 09:42:06
Quote Anchor link
Hoe heb je MyISAM altijd gebruikt dan i.c.m. relaties? :o
 
Ward van der Put
Moderator

Ward van der Put

24/04/2014 09:51:44
Quote Anchor link
Michael, kom je er nu uit met de prepared statements? Of heb je nog wat hulp nodig?

Ik zou zelf twee kleinigheden veranderen:

• de transactie pas starten na het klaarzetten van de prepared statement, dus voor de eerste execute();

• van het tweede prepared statement een gewone query maken, want je gebruikt hier de last insert ID rechtstreeks uit de database.
 
Michael -

Michael -

24/04/2014 10:05:49
Quote Anchor link
>> Hoe heb je MyISAM altijd gebruikt dan i.c.m. relaties? :o
Wat bedoel je? JOINS? Dat werkt gewoon.

Ward, Ja de rollback werkt nu.
Dus regel 4 kan beter op regel 21.
Waarom is de tweede niet goed dan? (en dus ook de 3e,4e,5e,6e..) Ik zou wel graag de prepared statements behouden i.v.m. security.
 
Ward van der Put
Moderator

Ward van der Put

24/04/2014 10:26:04
Quote Anchor link
De tweede mag ook een prepared statement zijn hoor, alleen gebruik je in dit voorbeeld uitsluitend de last insert ID rechtstreeks uit de database. Er komt hier niets mogelijk kwaadaardigs van buiten naar binnen, dus voegt een prepared statement weinig toe.

Aangezien de database pas bij de execute() daadwerkelijk wordt gewijzigd, kun je het starten van de transactie uitstellen totdat alle voorbereidingen afgerond zijn (dus het "prepared" van een prepared statement rond is). Schematisch is dat zoiets:

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
$stmt_one
   = $dbh->prepare('...');
$stmt_two   = $dbh->prepare('...');
$stmt_three = $dbh->prepare('...');

$stmt_one->bindParam('...');
$stmt_two->bindParam('...');
$stmt_three->bindParam('...');

$dbh->beginTransaction();

try {

    $stmt_one->execute();
    $stmt_two->execute();
    $stmt_three->execute();

    $dbh->commit();

}
catch (PDOException $e) {

    $dbh->rollBack();

}

?>


Uiteraard kun je ook in het eerste deel nog foutafhandeling toevoegen, alleen hoeft de rollBack() eigenlijk de drie keer execute() terug te rollen.
 
Michael -

Michael -

24/04/2014 10:50:39
Quote Anchor link
Bedankt voor de uitleg!
Wat doe je nu met de last insert id dan? Dat laat je niet zien. Wanneer is die beschikbaar en kan ik die toevoegen in de tabellen.

Zoals ik het nu heb wordt er al een id aangemaakt, auto_increment, en vervolgens weer verwijdert.
Wat ik dus krijg als er een fout in de 2e,3e,4e... tabel zit, dat alles wordt terug gedraaid, en ik weer wat toevoeg, dat hij dan een id overslaat. Heb je dat met jouw voorbeeld nog steeds?
Op zich vind het niet heel erg, dan kan ik ook zien wanneer er wat fout is gegaan, maar vroeg het me af.
 
Ward van der Put
Moderator

Ward van der Put

24/04/2014 10:59:09
Quote Anchor link
>> Wat doe je nu met de last insert id dan?

Daarvoor moet je dan wel een extra query of prepared statement tussenvoegen. Je krijgt dan inderdaad een andere volgorde dan mijn (algemene) voorbeeld, want de last insert ID is pas na het uitvoeren van de voorafgaande prepared statement bekend.
 
Michael -

Michael -

24/04/2014 11:09:06
Quote Anchor link
Mweh... dan kan ik jouw voorbeeld dus al niet toepassen.
Hoe doe je dat zelf dan om tabellen te koppelen? Ik moet toch weten welke bij welke horen. Dat kan ik niet achteraf nog gaan uitzoeken lijkt me.

Maakt ie in jouw voorbeeld wel een id aan en verwijdert deze weer? Dus de a_i verhoogt met 1?
In onderstaande zou dat sowieso wel weer gebeuren.

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
<?php
$stmt_one
   = $dbh->prepare('...');
$stmt_one->bindParam('...');
$stmt_one->execute();
$profile_id = $dbh->lastInsertId();

$stmt_two   = $dbh->prepare('...');
$stmt_three = $dbh->prepare('...');

$stmt_two->bindParam(':profile_id', $profile_id, PDO::PARAM_INT);
$stmt_three->bindParam(':profile_id', $profile_id, PDO::PARAM_INT);

$dbh->beginTransaction();

try {
    $stmt_two->execute();
    $stmt_three->execute();

    $dbh->commit();

}
catch (PDOException $e) {

    $dbh->rollBack();

}

?>
 

Pagina: 1 2 volgende »



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.