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


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.
Modérateur
Et l'eau,

1. D'une manière générale, ce genre de message d'erreur ne doit pas être affiché pour l'utilisateur. Il doit être considéré comme une erreur 500.
2. Rendre unique le numéro de tel n'est pas une bonne idée (un portable d'une société, téléphone fixe d'une famille).
3. Pour ton contexte et lorsque tu reçois les données, tu vérifies que la donnée n'est pas utilisée pour un autre compte (select). Dans le cas contraire où tu trouves une ligne, tu renvoies un message erreur. (processus basique d'un traitement de formulaire)
Modifié par niuxe (19 Feb 2022 - 14:42)
michel4-7 a écrit :
j'ai trouvé solution a ma question. je clôture le sujet , merci

Mais Niuxe a raison à 100% (sur les 3 points) !!
Il n'y a pas à personnaliser un message qui n'est pas censé être affiché...