IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Chiffre décimal, enlever les zéros inutiles [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre actif
    Inscrit en
    Juin 2006
    Messages
    584
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 584
    Points : 235
    Points
    235
    Par défaut Chiffre décimal, enlever les zéros inutiles
    Bonjour,
    Dans une table j'ai un nombre type décimal 8,4.
    Lorsque je fais une requete dans cette table les nombres sont affichés avec les zero aprés la virgule.
    Existe t'il une fonction qui supprimer les zero s inutiles aprés la virgule.
    Par exemple:
    4.0000 - > 4
    4.1200 - > 4.12
    2.0250 - > 2.025

    Merci de vos réponses.

  2. #2
    Membre éprouvé

    Profil pro
    Inscrit en
    Juin 2007
    Messages
    748
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 748
    Points : 1 022
    Points
    1 022
    Par défaut j'ai cela
    une division par 1 doit suffir :

    echo 1.234000/1 t'affichera 1.234

    a ++
    Conception / Dev

  3. #3
    Membre actif
    Inscrit en
    Juin 2006
    Messages
    584
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 584
    Points : 235
    Points
    235
    Par défaut
    Merci de ta réponse,
    je testera ca alors.

  4. #4
    Membre averti

    Profil pro
    Inscrit en
    Mai 2006
    Messages
    206
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 206
    Points : 319
    Points
    319
    Par défaut
    Euh il y a bien plus simple ^^ tu convertis l'affichage en INT sa te vire la virgule et tout ce qui suit, sa se fait à l'aide d'un précast lors de l'affichage.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    $var = '4.5300';
    echo $var; //Affiche 4.5300
    echo ( (int) $var);//Affiche 4
    echo ( (float) $var);//Affiche  4.53
    Sa vient du fait que la base de donnée ne fait aucune différence entre chiffre et lettre et donc te renvoi un chiffre sous forme de chaîne de caractère.

  5. #5
    Membre averti Avatar de max44410
    Étudiant
    Inscrit en
    Juin 2003
    Messages
    426
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2003
    Messages : 426
    Points : 301
    Points
    301
    Par défaut
    sinon tu peux le faire directement dans ta requete.
    pour mysql 5 tu as la fonction DECIMAL([nombre maximal de chiffres],[nombre de chiffres décimaux])

  6. #6
    Membre émérite
    Avatar de yiannis
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    1 494
    Détails du profil
    Informations personnelles :
    Âge : 59
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 494
    Points : 2 791
    Points
    2 791
    Par défaut
    Bonjour,

    En php tu as la fonction: number_format()

    le mieux est de faire comme max44410 le dit, le faire dans mysql, ca evite une action de plus en php et optimise ton code
    "Ce besoin de remords qui précède le Mal, que dis-je ! qui le crée..." E. CIORAN

  7. #7
    Membre actif
    Inscrit en
    Juin 2006
    Messages
    584
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 584
    Points : 235
    Points
    235
    Par défaut
    en fait je ne veux pas limiter les chiffres aprés la virgule.
    Dans ma table le champ est en décimal 8,4
    donc a chaque enregistrement ca me rajoute des 0 jusqu'au bon format.
    Mais lorsque de l'affichega ca m'affiche aussi les zeros inutiles.

  8. #8
    Membre averti Avatar de max44410
    Étudiant
    Inscrit en
    Juin 2003
    Messages
    426
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2003
    Messages : 426
    Points : 301
    Points
    301
    Par défaut
    Essaye en php en le transtypant en float, comme ca :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $variable = (float)$variableAvecLesZeros;

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Enlever les zéro au début d'un chiffre
    Par CyberMen dans le forum Débutez
    Réponses: 2
    Dernier message: 26/09/2013, 15h03
  2. enlever les zéro dans un champs
    Par shirya dans le forum ASP.NET
    Réponses: 4
    Dernier message: 26/03/2007, 18h01
  3. Comment enlever les zeros inutiles d'un float
    Par Skorpyon69 dans le forum C
    Réponses: 18
    Dernier message: 04/12/2006, 21h08
  4. Enlever les services inutiles ?
    Par Michaël dans le forum Sécurité
    Réponses: 6
    Dernier message: 25/10/2005, 16h12
  5. Enlever les espaces inutiles d'un AnsiString
    Par jamesb dans le forum C++Builder
    Réponses: 2
    Dernier message: 27/01/2005, 12h40

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo