Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1081 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  défaut de décimal

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

défaut de décimal

n°1715536
thierryR
J'aime les bretzels
Posté le 10-04-2008 à 12:21:02  profilanswer
 

Bonjour.
J'ai un problème que je ne comprend vraiment pas.
j'ai un champ mysql float (8,2) dans lequel je veux mettre un chiffre:  0.55
Par phpmyadmin ça fonctionne donc j'ai considéré que mysql fonctionne....
 
Par mon appli je n'ai pas les décimals:       = 0.00
Ce phénomène est constaté depuis que j'ai installé la mdv 2008.1 avec PHP Version 5.2.5
Mes scripts n'ont absolument pas changé.... Je ne trouve pas ce qui se passe.
 

 $sql= "REPLACE INTO  `bl_fournis`(`id`,`id_fourni` , `qte` , `qte_en_stock`, `pu_ht` , `num_bl`   , `date_bl` ,
                             `id_cde` ,`id_stock` ,`num_fact` ,`code_art`,`date_fact`,`garantie`,`id_chantier`,`ttc`,`date_paie` )
         VALUES('$value') ";
 
    $result=mysql_query($sql) ;
    if(!$result) { print 'register_BLF à échoué'.mysql_error(); $result = FALSE;  }


$value = 0009725','094','100.00','100.00','0,55','13923','2008-04-10','0','0002357','','201161','0000-00-00','','0034515','0.00','0000-00-00
 
Ma valeur est bien envoyée correcteùent mais elle est mal enregistrée car si controle avec phpmyadmin le champ "pu_ht" est bien renseigné à 0.00
Il me faut trouver qui change la valeur en chemin.
 
J'ai fait l'essai avec 1.55 est le resultat est 1.00.
 
Pour une petite aide.... Merci.


---------------
Penguin online qui ne fait que des conneries, et qui aime ça. Membre du http://www.fonacon.net/
mood
Publicité
Posté le 10-04-2008 à 12:21:02  profilanswer
 

n°1715614
flo850
moi je
Posté le 10-04-2008 à 14:01:39  profilanswer
 

je ne suis aps sur que tu doivent mettre des '' autour d'un champ de type float


---------------

n°1715623
masklinn
í dag viðrar vel til loftárása
Posté le 10-04-2008 à 14:08:19  profilanswer
 

flo850 a écrit :

je ne suis aps sur que tu doivent mettre des '' autour d'un champ de type float


Ni un champ de type int, mais je pense surtout que le problème est d'avoir écrit 0,55


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1715839
thierryR
J'aime les bretzels
Posté le 10-04-2008 à 18:26:59  profilanswer
 

non;non, j'ai écrit essentiellement avec le pavé numérique. Je ne sais pas ce que fait cette virgule.  Est ce qu'il y aurait ce type de changement paramétrédans php ?


---------------
Penguin online qui ne fait que des conneries, et qui aime ça. Membre du http://www.fonacon.net/
n°1715844
thierryR
J'aime les bretzels
Posté le 10-04-2008 à 18:52:48  profilanswer
 

En fait c'est la function abs() qui modifie le point en virgule !!!


---------------
Penguin online qui ne fait que des conneries, et qui aime ça. Membre du http://www.fonacon.net/
n°1716564
thierryR
J'aime les bretzels
Posté le 11-04-2008 à 23:24:00  profilanswer
 

J'observe aussi ailleurs que sans passer par la function abs() j'ai le même problème.  Ça devient vraiment inquiétant. Il suffit de faire

$variable += 3


et on se retrouve avec une virgule.


---------------
Penguin online qui ne fait que des conneries, et qui aime ça. Membre du http://www.fonacon.net/
n°1716566
flo850
moi je
Posté le 11-04-2008 à 23:26:22  profilanswer
 

pas chez moi  
 
sauf si tu utilise number_format avec les mauvais paramètres


---------------

n°1716739
thierryR
J'aime les bretzels
Posté le 12-04-2008 à 15:18:56  profilanswer
 

Voici ce qui figure en tête de toute mes pages

<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-15">


mais figure aussi ceci:

setlocale(LC_ALL, "fr_FR.UTF-8" );


 
Mon Pc quand à lui est en UTF8

$ locale
LANG=fr_FR.UTF-8
LC_CTYPE=fr_FR.UTF-8
LC_NUMERIC=fr_FR.UTF-8
LC_TIME=fr_FR.UTF-8
LC_COLLATE=fr_FR.UTF-8
LC_MONETARY=fr_FR.UTF-8
LC_MESSAGES=fr_FR.UTF-8
LC_PAPER=fr_FR.UTF-8
LC_NAME=fr_FR.UTF-8
LC_ADDRESS=fr_FR.UTF-8
LC_TELEPHONE=fr_FR.UTF-8
LC_MEASUREMENT=fr_FR.UTF-8
LC_IDENTIFICATION=fr_FR.UTF-8
LC_ALL=


 
Il doit surement y avoir un schmilblic la dedans...


---------------
Penguin online qui ne fait que des conneries, et qui aime ça. Membre du http://www.fonacon.net/
n°1717035
thierryR
J'aime les bretzels
Posté le 13-04-2008 à 22:07:55  profilanswer
 

Et voici encore un autre prb qui y ressemble. :heink:  

mysql_query("UPDATE `stock_gpe` SET `selection`='$flag' WHERE `id` = ' $T_obj_stok_gpe_items[$j]->id_item'   " );


PHP Catchable fatal error:  Object of class stdClass could not be converted to string


 
 
alors que si je fais  

$id_item=$T_obj_stok_gpe_items[$j]->id_item;
mysql_query("UPDATE `stock_gpe` SET `selection`='$flag' WHERE `id` = ' $id_item'   " );


 
Ça passe...


Message édité par thierryR le 13-04-2008 à 22:13:45

---------------
Penguin online qui ne fait que des conneries, et qui aime ça. Membre du http://www.fonacon.net/
n°1717160
flo850
moi je
Posté le 14-04-2008 à 11:34:45  profilanswer
 

1- tu mets un $id_item entre '' , pourquoi ?
2- "UPDATE `stock_gpe` SET `selection`='$flag' WHERE `id` = ' $T_obj_stok_gpe_items[$j]->id_item'   " a rempalcer par "UPDATE `stock_gpe` SET `selection`='$flag' WHERE `id` = ". $T_obj_stok_gpe_items[$j]->id_item;


Message édité par flo850 le 14-04-2008 à 11:34:52

---------------

mood
Publicité
Posté le 14-04-2008 à 11:34:45  profilanswer
 

n°1717972
Melendril
Posté le 15-04-2008 à 16:48:04  profilanswer
 

Salut
 
Le virgule vient d'un problème de locale. Cela change avec l'OS, mais j'ai constaté sur le serveur du boulot que le séparateur décimal en UTF8 est la virgule  
 
Essaye un setlocale(LC_NUMERIC, 'fr_FR@euro ISO-8859-15').
 
Cela devrait supprimer cette virgule

n°1718121
thierryR
J'aime les bretzels
Posté le 15-04-2008 à 22:41:44  profilanswer
 

C'est une bonne info... Je te remercie.


---------------
Penguin online qui ne fait que des conneries, et qui aime ça. Membre du http://www.fonacon.net/

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  défaut de décimal

 

Sujets relatifs
Script Imprimante reseau par défautReconnaitre si un nombre est décimal ?
Isoler grace à TOP les 5 plus fortes valeurs mais sur plusieurs Agrég?formulaire html et liste déroulante, problème avec l'option par défaut
ficheir d'écriture par défaut de la console (put)Enlever la bordure par défaut de la balise <html> sous IE7
[Résolu] Charger une page "accueil.php" par défaut dans mon index.php[Delphi] Unit par défaut
Par défaut [GWT]Composant GWT dans une application existanteVisual C# : changer le framework par défaut
Plus de sujets relatifs à : défaut de décimal


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR