Empêcher à PHP d'arrondir les données à virgule MYQL

Résolu/Fermé
BOB_BOOKSON Messages postés 17 Date d'inscription samedi 26 juin 2021 Statut Membre Dernière intervention 22 août 2022 - Modifié le 28 sept. 2021 à 21:01
jordane45 Messages postés 38384 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 15 janvier 2025 - 29 sept. 2021 à 09:13
Bonjour,
Je suis face à une situation pour laquelle j'ai besoin de votre expertise.

En effet, je travaille sur une application des finances Php-Mysql mais lorsque je souhaite afficher les données de la base des données dans un formulaire suite à une requête, PHP arrondi automatiquement les données à virgule alors que dans la base des données cela affiche bel et bien avec la partie décimal comme le montre l'image ci-dessus.

A voir également:

2 réponses

jordane45 Messages postés 38384 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 15 janvier 2025 4 727
29 sept. 2021 à 07:51
Bonjour
Et quel est le code php utilisé pour afficher tes données ?
Car il n'y a aucune raison qu'il ne t'affiche pas ces nombres tels quels...
0
BOB_BOOKSON Messages postés 17 Date d'inscription samedi 26 juin 2021 Statut Membre Dernière intervention 22 août 2022
29 sept. 2021 à 08:10
echo $_variable_contenant_la_valeur_a_afficher;  
0
yg_be Messages postés 23427 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 14 janvier 2025 1 559 > BOB_BOOKSON Messages postés 17 Date d'inscription samedi 26 juin 2021 Statut Membre Dernière intervention 22 août 2022
29 sept. 2021 à 08:13
bonjour,
et comment la valeur arrive-t-elle dans cette variable?
0
jordane45 Messages postés 38384 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 15 janvier 2025 4 727 > BOB_BOOKSON Messages postés 17 Date d'inscription samedi 26 juin 2021 Statut Membre Dernière intervention 22 août 2022
29 sept. 2021 à 08:17
il faut TOUT le code...
La requête SQL ...
Le code PHP qui exécute cette requête
Le code PHP qui récupère le résultat de la requête pour le mettre dans cette variable ...
Tout quoi....

Sinon comment penses tu qu'on puisse voir où se situe le problème ??!
0
BOB_BOOKSON Messages postés 17 Date d'inscription samedi 26 juin 2021 Statut Membre Dernière intervention 22 août 2022 > jordane45 Messages postés 38384 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 15 janvier 2025
29 sept. 2021 à 08:56
Sous MySQL si ca peut aider le champs en question a pour type des données:
decimal(19,2)


if(isset($_POST['date1'])and isset($_POST['date2'])){
$d1= $_POST['date1'];
$d2= $_POST['date2'];
include('connexion.php');
$q1=mysql_query("select* from depense where dat_j BETWEEN '$d1' AND '$d2' ORDER BY id ASC") or die('erreur. DEP ');
$nb_result=mysql_num_rows($q1);
if ($nb_result!== 0){
while($cool_18=mysql_fetch_array($q1))
{
$montant_depense=$cool_18['montant];
Echo $montant_depense ;
echo"<br>"; }
}}
0
BOB_BOOKSON Messages postés 17 Date d'inscription samedi 26 juin 2021 Statut Membre Dernière intervention 22 août 2022
Modifié le 29 sept. 2021 à 08:51
Sous MySQL si ca peut aider le champs en question a pour type des données:
decimal(19,2)

if(isset($_POST['date1'])and isset($_POST['date2'])){
$d1= $_POST['date1'];
$d2= $_POST['date2'];
include('connexion.php');
$q1=mysql_query("select* from depense where dat_j BETWEEN '$d1' AND '$d2' ORDER BY id ASC") or die('erreur. DEP ');
$nb_result=mysql_num_rows($q1);
if ($nb_result!== 0){
while($cool_18=mysql_fetch_array($q1))
{
$montant_depense=$cool_18['montant];
Echo $montant_depense ;
echo"<br>"; }
}}
0
BOB_BOOKSON Messages postés 17 Date d'inscription samedi 26 juin 2021 Statut Membre Dernière intervention 22 août 2022
Modifié le 29 sept. 2021 à 09:16
Désoler de vous avoir grandement dérangé.
parmi des
include();
il ya des fonction dot celle-ci
 $mt111=number_format($mont,0,',',' ');
source du problème, j'ai résolu le problème en ajoutant juste le nombre des caratères après la virgure comme ceci:
 $mt111=number_format($mont,1,',',' ');


Encoure une fois de plus, merci de votre disponibilité et sens professionnelle de nous aider, Nous débutants.
Merci bien.
0
jordane45 Messages postés 38384 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 15 janvier 2025 4 727
29 sept. 2021 à 09:13
Déjà, saches que tu utilises une très ancienne extension mysql pour relier ton code php à ta bdd ..
Désormais, il faut passer par PDO ou mysqli.
https://www.commentcamarche.net/faq/43261-php-l-extension-mysql-est-obsolete#top

Quoi qu'il en soit, je ne vois rien dans ton code qui pourrait tronquer les nombres issus de ta requête SQL.
Commence par refaire le code avec une extension "valide" ( moi je préfère PDO .. mais mysqli c'est bien aussi )
et reviens nous voir avec le code modifié.

NB: Tu pourras aussi faire un var_dump de ta variable $cool_18 pour voir ce qu'elle retourne ?
0