Bonjour,
Je travail en PHP 5.4.3 et SQL server 2005 en utilisant les procédures de connexion odbc.
Lors d'un ajout d'une valeur en float dans la base de données aucun problème, mais lorsque je veux extraire ces valeurs, si la dernière valeur est un float alors il modifie le nombre de décimal :
A l’insertion 65.3
Dans la base de donnée 65.3
A l'affichage 65.299999999999997
Ce problème ne se pose que sur le dernier nombre décimal affiché.
Juste pour information le but est d'aller chercher des montants associé a des dispositifs
Voici le code PHP :
J'ai trouvé la solution pour masqué le problème :
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
17
18
19
20
21
22
23
24
25
26
27
28 <?php header('Content-Type: text/html; charset=ISO-8859-1'); $username="user"; $password="mdp"; $db="BDD"; $server="192.168.1.14\SQLEXPRESS"; $connect=odbc_connect("DRIVER={SQL Server};SERVER=$server;DATABASE=$db", $username, $password); $rsql="SELECT id_dispositif, libelle_dispositif FROM DISPOSITIF"; $resultat=odbc_exec($connect, $rsql); while(odbc_fetch_row($resultat)) { $rsql2="SELECT montant_financement FROM FINANCEMENT WHERE id_dispositif='".odbc_result($resultat,"id_dispositif")."' AND id_financeur='".$_GET['id']."'"; $resultat2=odbc_exec($connect, $rsql2); $value=""; while(odbc_fetch_row($resultat2)) { $value=odbc_result($resultat2,"montant_financement"); } echo "<input type='text' id='TB".$i."' name='".odbc_result($resultat,"id_dispositif")."' value='".$value."' onKeyPress='return controle_chiffre(event);'>"; } odbc_close($connect); ?>
Mais je voudrai savoir pourquoi il ne me l'affiche pas correctement comme il est affiché dans la base de donnée.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 $value = number_format($value, 2, '.', '');
Merci.
Partager