Probleme de calculs
JOJO
-
jee pee Messages postés 9345 Date d'inscription Statut Modérateur Dernière intervention -
jee pee Messages postés 9345 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour
J ai un petit souci avec un calcul...
Je souhaiterai faire en sorte que ma base de données soit mise a jour de la maniere suivante :
On selectionne le membre qui est le parrain d'un autre membre et on ajoute 20% du nombre de points qui ont ete attribué au filleul.
Ex : LE membre koko est le filleul de niki. Il s inscrit a une campagne et recoit 20 points qui seront crédité sur son compte. A son tour, niki recevra 20% des 20 points qui ont ete attribués à koko...soit 4 points qui seront crédité sur le compte de niki.
J'ai donc fait la ligne de code suivante :
On met a jour la table membre donc le pseudo est égal à celui du parrain et on ajoute a son solde de points actuel, le nombre de points attribué a la campagne validée par le filleul auxquels on ajoute 20% et auxquels on enleve a nouveau le nombre de points que vaut la campagne...
Soit pour l exemple ci dessus : Solde de points de niki + (20 points de koko + 20%) - 20 = 4
Le soucis est que cela ne met pas a jour la base de donnée...il n y a aucun message d erreur mais lorsque je consulte le nouveau solde de niki; le solde n a pas ete mis jour...
J ai un petit souci avec un calcul...
Je souhaiterai faire en sorte que ma base de données soit mise a jour de la maniere suivante :
On selectionne le membre qui est le parrain d'un autre membre et on ajoute 20% du nombre de points qui ont ete attribué au filleul.
Ex : LE membre koko est le filleul de niki. Il s inscrit a une campagne et recoit 20 points qui seront crédité sur son compte. A son tour, niki recevra 20% des 20 points qui ont ete attribués à koko...soit 4 points qui seront crédité sur le compte de niki.
J'ai donc fait la ligne de code suivante :
$sql= mysql_query("UPDATE membres SET soldepoints=soldepoints+('$nombrepoints2+20%')-$nombrepoints2 WHERE pseudo='$parrain'") or die('Erreur SQL...veuillez contacter l\'administrateur'.mysql_error());
On met a jour la table membre donc le pseudo est égal à celui du parrain et on ajoute a son solde de points actuel, le nombre de points attribué a la campagne validée par le filleul auxquels on ajoute 20% et auxquels on enleve a nouveau le nombre de points que vaut la campagne...
Soit pour l exemple ci dessus : Solde de points de niki + (20 points de koko + 20%) - 20 = 4
Le soucis est que cela ne met pas a jour la base de donnée...il n y a aucun message d erreur mais lorsque je consulte le nouveau solde de niki; le solde n a pas ete mis jour...
A voir également:
- Probleme de calculs
- Barbara veut calculer automatiquement son budget dans un tableau. citez un des logiciels lui permettant de faire des calculs sur des tableaux de nombres (tableur). - Forum Musique / Radio / Clip
- Citez un des logiciels lui permettant de faire des calculs sur des tableaux de nombres (tableur). ✓ - Forum LibreOffice / OpenOffice
- Calcul de moyenne sur excel - Guide
- Budget plus cic ✓ - Forum finances
- Roland souhaite calculer le montant total des ventes de son magasin. le fichier contient, pour chaque produit, la quantité vendue et le prix unitaire. calculez le montant total des ventes. ✓ - Forum Excel
6 réponses
bonjour,
ne connaissant ni mysql, ni son interfacage sous php mes remarques n'ont qu'une portée généraliste et peut être fausses :
1/ es-tu certain que sur '$nombrepoints2+20%' il faille utiliser une simple cote ' dans la syntaxe pour encadrer l'expression ?
2/ pour rajouter 20% il y a plus simple : soldepoints=soldepoints + ( $nombrepoints2 * 0.20 )
cdt
ne connaissant ni mysql, ni son interfacage sous php mes remarques n'ont qu'une portée généraliste et peut être fausses :
1/ es-tu certain que sur '$nombrepoints2+20%' il faille utiliser une simple cote ' dans la syntaxe pour encadrer l'expression ?
2/ pour rajouter 20% il y a plus simple : soldepoints=soldepoints + ( $nombrepoints2 * 0.20 )
cdt
ok, jee pee !
Tu as raison pour la facon de calculer, on va donc partir sur cette base :
Par contre maintenant il me met bien le champ a jour mais il n a pas pris la bonne valeur...En effet, il a credite le compte de koko de 20 points et le compte de niki de 20 points
Tu as raison pour la facon de calculer, on va donc partir sur cette base :
$sql= mysql_query("UPDATE membres SET soldepoints=soldepoints+('$nombrepoints2*0.20') WHERE pseudo='$parrain'") or die('Erreur SQL...veuillez contacter l\'administrateur'.mysql_error());
Par contre maintenant il me met bien le champ a jour mais il n a pas pris la bonne valeur...En effet, il a credite le compte de koko de 20 points et le compte de niki de 20 points
il faut peut etre calculer le 20 % avant pour l'avoir dans une variable et juste ajouter après cette variable
ou le separateur decimal n'est pas le . mais la vigule , 0.20 ==> 0,20
ou le separateur decimal n'est pas le . mais la vigule , 0.20 ==> 0,20
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonsoir, cela n a pas marche...mais j ai fait differemment...
Et ca donne le meme resultat...! :p
$pointsparrain = $nombrepoints2*20;
$sql= mysql_query("UPDATE membres SET soldepoints=soldepoints+$pointsparrain/100 WHERE pseudo='$parrain'") or die('Erreur SQL...veuillez contacter l\'administrateur'.mysql_error());
Et ca donne le meme resultat...! :p