Afficher genre 0001234567

Eléphant du PHP | 63 Messages

15 mai 2009, 14:39

Bonjour,

une question j'ai un champs en "int(11)" dans ma base de donnee
et un maxlength 10 dans mon input

et si j'insere 0001234567 (donc 10 chiffre)
il me le tronque en "1234567 " qu'il m'enregistre en base de donnee

et moi en fait je souhaiterai pouvoir afficher lors de ma requete
d'affichage "0001234567"

Es ce a l'insertion qu'il faut faire quelque chose ou lors de l'affichage ?
Et comment ?



c'est résolu il me suffit en base de donnée de passer le champs en varchar en fait
Avec le temps qui s'écoule je trouve que je m'en sort de mieux en mieux :)

Mammouth du PHP | 2937 Messages

15 mai 2009, 15:02

c'est résolu il me suffit en base de donnée de passer le champs en varchar en fait
En consultant le manuel MySQL, à la section types numériques, on peut lire ceci :
Lorsqu'elle (la taille d'affichage, NDLR) est utilisée avec l'attribut de colonne optionnel ZEROFILL, le caractère de remplissage par défaut est remplacé par le caractère zéro. Par exemple, pour une colonne dont le type est INT(5) ZEROFILL, la valeur 4 sera lue 00004.
Autrement dit, il te suffisait d'effectuer une requête de ce type :

Code : Tout sélectionner

ALTER TABLE ta_table MODIFY ta_colonne INT(11) ZEROFILL
en précisant un attribut au type de colonne (ici, en l'occurence, ZEROFILL est un attribut, facultatif, du type INT), et ce sans avoir à changer de type (après tout, s'agissant d'un nombre, et d'un nombre seulement, je ne vois pas pourquoi je l'enfermerais dans une chaîne de caractère d'un type comme VARCHAR ;) ).

Eléphant du PHP | 63 Messages

15 mai 2009, 15:33

oki bien le bonjour et merci je rechange et prend donc ta methode alors;)


grnad merci et bonne soiree
Avec le temps qui s'écoule je trouve que je m'en sort de mieux en mieux :)