Bonsoir,
Je sais que je déterre un vieux topic, mais votre échange m'a aidé et voici moi ce que j'ai fait :
- Je récupère le code SQLState vu dans getMessage() proprement avec getCode()
- J'explose la chaîne obtenu par getMessage(), caractère séparateur : le ":" avec un espace après
- Je récupère l'erreur SQL contenu dans le 2e élément du tableau
- Je retire le SQLState et l'erreur SQL de mon tableau et je le re-transforme en chaîne séparé par ":" avec un espace avant et après (pour ne pas abîmer la syntaxe de la description d'erreur de SQL)
- J'explose la chaîne régénérée, caractère séparateur : " " un espace
- Je récupère le code erreur SQL.
- Je retire le code erreur SQL de mon tableau et je le re-transforme en chaîne séparé par " " un espace.
- Je stocke cette nouvelle chaîne dans une variable pour la description de l'erreur SQL
J'obtiens donc 4 variables :
!! Attention pour que le catch fonctionne, il faut ajouter une information sur la connexion PDO :
J'ai ajouté :
Bye