Probleme avec la soustraction ...

Fermé
tim80 - 24 févr. 2013 à 21:24
acige Messages postés 18 Date d'inscription lundi 16 avril 2012 Statut Membre Dernière intervention 15 mars 2013 - 6 mars 2013 à 23:32
Bonjour,
Je développe mon application de gestion de produit et je suis face à un problème assez inhabituel...
Via mysql, je récupère la valeur d'un prix de vente ht et le prix d'achat ht.
En voulant calculer le bénéfice, je fais une simple soustraction soit :
$benefice = $pvht-$paht;
jusque la pas de problème juste que le résultat du bénéfice est toujours un nombre entié alors qu'il devrait être un nombre avec des décimal...
exemple un produit vendu 74.41€ht, acheté 29€ht, le bénéfice devrait être de 45.41€
hors il me retourne uniquement 45 tout rond sans aucune décimale.
Avez vous une idée pour solutionné ce soucis ?


6 réponses

utilise tu la syntax ceil qui sert a arrondir au niveau au dessus ?
Sinon dans la bdd et sql appel tu bien un double ? et pas un int
0
je n'utilise aucune syntaxe pour réduire le décimal pour le moment.
Niveau base de donnée, j'avais mis de base en varchar pour faire simple, après j'ai testé en décimal et la en double, par contre je ne connaissais pas double et je ne peut pas mettre de chiffre à virgule avec double donc j'ai remis décimal
0
Je viens de tester avec float, ça fonctionne par contre c'est pas très pratique je vois que ça ne prend pas les chiffres à virgules, mais les chiffres à point.
En soit je doit changer obligatoirement ma virgule par un point ou il y une autre solution ?
0
fait voir ton code
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Pour la php requête dans ma page php :
		
$requete_stock = "select paht, pvht, pvttc from stock where idstock='$idstock';";
		$result_requete_stock = mysql_query($requete_stock) or die ('impossible dexecuter la requete_stock');
			while ($data = mysql_fetch_array($result_requete_stock)){
			$paht = $data['paht'];
			$pvht = $data['pvht'];
			$pvttc = $data['pvttc'];
			}	
		$benefice = $pvht-$paht;
0
acige Messages postés 18 Date d'inscription lundi 16 avril 2012 Statut Membre Dernière intervention 15 mars 2013 1
6 mars 2013 à 23:32
Voici ton code corrigé :

$requete_stock = "SELECT paht, pvht, pvttc FROM stock WHERE idstock='$idstock';";
$result_requete_stock = mysql_query($requete_stock) or die ('impossible d\'executer la requete_stock');

/**J'ai supprimé la boucle while qui est inutile dans votre cas **/

$data = mysql_fetch_array($result_requete_stock);
$paht = $data['paht'];
$pvht = $data['pvht'];
$pvttc = $data['pvttc'];

$benefice = $pvht-$paht;

$benefice = str_replace('.' ,', ',$benefice ); //Remplace le point par une virgule

0