-
Transaction PDO mysql
Bonjour,
J'ai une question regardant les transactions avec PDO sur une base MYsql.
Pour faire simple j'ai deux classes :
- classe Utilisateur
- classe Client extends Utilisateur
Dans la classe Utilisateur j'ai une fonction PHP 'NewUser' qui utilise une procédure stockée 'CreateUtilisateur' pour créer un nouvel utilisateur et me retourner son ID.
Dans la classe Client, j'ai une fonctionPHP 'NewClient' qui appelle parent::Newuser et passe la valeur retournée (l'ID) à une procedure stockée 'CreateClient'.
J'aimerai pouvoir utilisé PDO transaction pour éviter des erreurs et avoir par example un utilisateur sans client correspondant.
Je comprend le principe des transaction, mais je ne vois pas comment soit faire un rollback ou un commit pour les deux fonctions à partir de la fonction NewClient.
Un peu de lumière serait bienvenue; Merci d'avance.
-
Petit détail non négligeable, PHP peux utiliser du PDO avec le driver MySql
pour ses transactions avec une table SQL de sa base SQL.
Nuance car justement PDO est du POO mis a ton service pour faciliter le MySql classique.
Alors te dire que pour moi c'est un abérartion de faire des classes de classes, ne t'étonnera pas je penses. Mais nombreux ici adorent tout emboiter ... 8O
Pour la mécanique tu devrais lire cet discution trés instructive.
http://www.developpez.net/forums/d34...mmit-rollback/