Mauvais nombres après envoi formulaire
Bonjour,
J'ai un formulaire d'inscription qui envoie des coordonées dans une base MySQL. Mais j'ai un problème que je ne comprends vraiment pas du tout...
Quand la personne s'inscrit en ligne elle rentre des informations sur son adresse postale, dont bien sûr le code postal. Hors, quand je vais consulter dans la base MySQL le code postal, j'ai souvent le même code postal, pas tout le temps! Mais très fréquement. "32767", alors que la ville indiquée n'a pas du tout ce code postal.
Quand je regarde le code php, je ne trouve nul part ce "32767".
Ce code correpond-t-il a quelque chose de connu? Que dois-je montrer du code pour avoir un coup de patte?
Merci d'avance et bonne journée (journée de OS 3.0 du iPhone :D )
Réponses apportées à cette discussion
Bonjour Tatayet,
Je crois savoir d'où cela vient ! Je pense que le champ qui reccueille le code postale est du mauvait type.
Je pense que tu l'as mis en 'int', alors quand le code postale est par exemple 78160, MySQL va réduire automatiquement le code à la valeur maximale autorisé par un champ de type 'int'. Je te conseille de le mettre en 'bigint', comme ça tu n'auras plus de problème étant donnée que le valeur maximale autorisée dans un 'bigint' est supérieure à un 'int'.
Voila ! Et j'espère avoir répondu à ton problème ...
PS : je ne sait plus la valeur maximale que peut prendre un 'int', je mis un 'int' pour t'expliquer ;). Mais je pense que c'est ça :D
Salut,
pour un code postal, il est de loin préférable d'utiliser un typoe CHAR ou VARCHAR. Sinon, les codes postaux des départements inférieurs à 10000 seront tronqués à 4 chiffres, le 0 du début étant automatiquement supprimé pour un type numérique, à moins d'utiliser l'option zero_fill, mais cette solution n'est à mon sens pas à privilégier.
Bonjour,
Le champs était sur SMALLINT(5), je l'ai donc changé sur VARCHAR.
J'espère avoir des inscriptions dans la journée avec des codes postaux supérieurs à 32767.
Merci déjà pour ces avancements.