Bonsoir,

voici le principe tel que je l'ai compris :
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
//on suppose que la connexion est établie et que $dbh est une instance pdo
try {
    $dbh->startTransaction();
    $sql = "INSERT....";
    $dbh->query($sql);
    $dbh->commit();
}
 catch (\Exception $e) {
    $dbh->rollback();
}

Si on a plusieurs requêtes à effectuer mais qu'on veut soit toutes les exécuter, soit tout annuler, alors peut-on faire ça ?
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
//on suppose que la connexion est établie et que $dbh est une instance pdo
try {
    $dbh->startTransaction();
    $sql1 = "INSERT....";
    $dbh->query($sql1);
    $sql2 = "INSERT....";
    $dbh->query($sql2);
    $dbh->commit();  // seulement un unique commit à la fin
}
 catch (\Exception $e) {
    $dbh->rollback();
}