Personnaliser les messages d'erreurs de clés uniques

Par Michel4-7, il y a 4 ans


Base de données MySQL

Bonjour,
Afin d'éviter les doublons d'inscriptions dans ma base de données, j'ai mis une clé unique sur le champ numéro de téléphone (normalement il n'y qu'un numéro de téléphone par personne).
Le problème c'est que lorsqu'il y a un doublon, le message d'erreur est, pour un non-initié, incompréhensible (et peut laisser penser que c'est un bug du site).
Par exemple pour un doublon le message est le suivant

Fatal error: Uncaught PDOException: SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '0600000000' for key 'telephone' in C:\xampp\htdocs\sitesweb\formulaire\inscription.php:28 Stack trace: #0 C:\xampp\htdocs\sitesweb\formulaire\inscription.php(28): PDOStatement->execute() #1 {main} thrown in C:\xampp\htdocs\sitesweb\formulaire\inscription.php on line 28

Ma demande est toute simple aujourd'hui.
Est-il possible de personnaliser ce message de façon à avoir un message en français correct pour informer l'utilisateur qui voudrait entrer 2 fois le même numéro ?
Merci.

3 réponses

Carouge10, il y a 4 ans

bonjour.
a toi d'afficher un message d'erreur clair et précis.
a la place de récupérer l'exception, on affiche le message.
avec le code ça sera plus facile.

Michel4-7, il y a 4 ans

Merci j'ai résolu mon problème , tout est totalement fonctionnel