PHP, PDO, transactions et procédures stockées [Résolu] - PHP - Programmation
Marsh Posté le 15-06-2019 à 22:39:27
Un élément intéressant que je viens juste de découvrir.
Depuis PHP, si après avoir validé ma transaction je fais un "SELECT * FROM" j'ai bien mon enregistrement qui s'affiche.
Par contre si je me déconnecte puis que je recréé un objet PDO
Code :
|
ben là plus aucune trace des enregistrements C'est comme si les modifications que je faisais étaient volatiles et qu'une fois la connexion coupée ils disparaissaient
Marsh Posté le 15-06-2019 à 23:17:30
J'ai trouvé une solution... J'ai remplacé les lignes suivantes :
Code :
|
Par :
Code :
|
Et ça fonctionne. Alors pour le serveur, après vérification, c'est du MariaDB... Mais bizarre car ça reste du MySQL...
Je vais m'en contenter ^^ Mais si je pouvais au moins comprendre ça m'aiderait bien
Marsh Posté le 15-06-2019 à 21:58:46
Bonjour tout le monde
J'ai un soucis avec php et l'extension pdo. J'ai bien cherché sur divers topics ou sur google mais je n'arrive pas à trouver d'informations pour m'aider.
Je suis sur MySQL et j'ai une procédure toute simple :
Côté PHP, j'ai le code suivant :
J'ai supprimé les contrôles de mon code pour simplifier l'exemple.
Lorsque j'exécute ma page PHP, tout se passe bien : la transaction se lance, la requête est exécutée, ma transaction est validée et j'ai bien mon ID qui s'affiche. A chaque actualisation de ma page, mon ID s'incrémente, signe que mon autoincrement dans la base fonctionne.
Et pourtant ! Je n'ai strictement aucun enregistrement dans ma table `test` ! Pourtant, si j'exécute le même bout de code sans transaction ça fonctionne. Idem côté Mysql : si je fais appel à ma procédure, ça fonctionne aussi. Si je garde les transactions PDO mais qu'à la place d'une requête préparées j'utilise ça :
Ça fonctionne aussi...
Alors quoi ? Une incompatibilité avec les transactions, les requêtes préparées et mysql ?
Quelqu'un a une idée de l'origine de ce problème ?
Merci pour vos retours
Message édité par matheo265 le 16-06-2019 à 12:01:45