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 :

probleme de virgule avec la base


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier
    Inscrit en
    Avril 2011
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Avril 2011
    Messages : 10
    Par défaut probleme de virgule avec la base
    Bonjour a tous,

    Je fais actuellement une montée de version php4 vers php5 d'un appli qui gère les astreintes
    Mon but est de permettre de modifier les taux d'astreintes.
    Par exemple etre d'astreinte le dimanche a un taux superieur à un jour de la semaine.

    Le souci:
    quand je veux modifier celui ci je ne peux que pour les valeurs entière je ne peut pas mettre de virgule même si l'appli me dit ok elle ne fait rien des qu'il y a des virgule

    La base accepte pourtant les virgule (NUMBER (5,3))

    merci d'avance

    PS : quand j'ajoute dans la base par exemple 1,45 ca marche mais ca affiche 1

  2. #2
    Expert confirmé
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Par défaut
    Hello

    Les floats en PHP utilisent le . et non la virgule. Mais tu peux faire ça:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $a = "11,2";
    var_dump((float)str_replace(',','.',$a));
    MySQL utilise également le point pour les flotants.

  3. #3
    Membre régulier
    Inscrit en
    Avril 2011
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Avril 2011
    Messages : 10
    Par défaut
    merci je vais test sinon c'est une base oracle et elle prend que les ,

  4. #4
    Membre régulier
    Inscrit en
    Avril 2011
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Avril 2011
    Messages : 10
    Par défaut
    Re j'ai fait ca si j'ai bien compris ca devrait marcher mais ca ne marche pas

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
     
    if(isset($_REQUEST["modifier"])){ // action au clique sur le bouton
     
    $pa=$_REQUEST["pa"];             //
    $pi=$_REQUEST["pi"];               // la ca récupère tout ce qu'il y a dans le formulaire
    $tv=$_REQUEST["tv"]/100;        // on divise par cent car ce sont des pourcentages et dans la base c'est pas en %
    $ts=$_REQUEST["ts"]/100;        //
    $td=$_REQUEST["td"]/100;        //
    var_dump((float)str_replace('.' , ',' ,$pa));//
    var_dump((float)str_replace('.' , ',' ,$pi)); //
    var_dump((float)str_replace('.' , ',' ,$tv)); //la on change le point en virgule pour rentrer ça dans oracle
    var_dump((float)str_replace('.' , ',' ,$ts)); //
    var_dump((float)str_replace('.' , ',' ,$td)); //
     
    /et la on fait les update dans la base
    $pa et $pi sont des prix alors que les autre des taux

    pour les prix ca marche que si on utilise les virgule alors que ca devrait aussi marcher avec les points.

  5. #5
    Expert confirmé
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Par défaut
    Tu fais les divisions sans caster en float, forcément, diviser une chaine de caractères par un entier ça peut rien produire de bon

  6. #6
    Membre régulier
    Inscrit en
    Avril 2011
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Avril 2011
    Messages : 10
    Par défaut
    ah wai spa con

Discussions similaires

  1. [WB18] Probleme d interaction avec ma base de données
    Par Bkhugues dans le forum WebDev
    Réponses: 0
    Dernier message: 23/02/2014, 11h03
  2. [MySQL] probleme de liaison avec ma base de donnes a l'aide d'un formulaire php
    Par ibuto dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 17/05/2011, 20h10
  3. Probleme de connexion avec une base de données SQL server
    Par lasvegas_parano dans le forum iReport
    Réponses: 29
    Dernier message: 19/07/2007, 10h17
  4. Problème avec ma base Access
    Par djedje37et28 dans le forum Access
    Réponses: 3
    Dernier message: 29/09/2005, 08h03
  5. probleme avec une base de donnée postgres SQL
    Par Alexlesilex dans le forum Bases de données
    Réponses: 1
    Dernier message: 19/06/2005, 22h09

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