Page 1 sur 1
Comment additioner des nombres en php?
Posté : 19 août 2009, 14:47
par arkhon21
Bonjour,
Je travaille sur une nouvelle application:
A chaque fois qu'un internaute envoie un message, des points lui sont attribués. Pour cela, j'utilise un script INSERT INTO pour ajouter dans une table les points. Jusque là, tout est OK.
Sauf que je ne sais pas comment faire pour additionner le nombre de chaque point entrer dans la table pour ensuite afficher le total
Quelqu'un serait il comment on fait cela?
Merci
Re: Comment additioner des nombres en php?
Posté : 19 août 2009, 14:49
par monintranet
je suis pas sûr de comprendre...
tu peux faire un query pour récupérer la valeur initiale du champs puis ajouter à cette valeur le nombre de points que tu lui attribues pour son message... à partir de là, ta variable contenant le nombre de points peut être affichée et utilisée pour mettre à jour via une nouvelle query la valeur initiale.
Re: Comment additioner des nombres en php?
Posté : 19 août 2009, 15:05
par arkhon21
je suis pas sûr de comprendre...
tu peux faire un query pour récupérer la valeur initiale du champs puis ajouter à cette valeur le nombre de points que tu lui attribues pour son message... à partir de là, ta variable contenant le nombre de points peut être affichée et utilisée pour mettre à jour via une nouvelle query la valeur initiale.
Non non non,
je veux seulement additionner toutes les valeurs contenue de la table et les afficher. Rien d'autre
Mais ça, je sais pas comment m'y prendre pour le faire
Re: Comment additioner des nombres en php?
Posté : 19 août 2009, 15:07
par charabia
Je pense que tu veux faire un SUM et GROUP BY :
http://www.w3schools.com/sql/sql_groupby.asp
Re: Comment additioner des nombres en php?
Posté : 19 août 2009, 15:14
par Victor BRITO
Autre possibilité, toujours en ne sollicitant que le langage SQL :
Code : Tout sélectionner
UPDATE ta_table SET ta_colonne = ta_colonne + nombre de points à ajouter WHERE ta condition
Re: Comment additioner des nombres en php?
Posté : 22 août 2009, 17:50
par arkhon21
J'ai trouver quelque chose
$query = "SELECT count(point) from Game where myusername='{$_SESSION ['myusername']}'";
$result = mysql_query($query) or die (mysql_error());
$total=mysql_fetch_row($result);
Puis j'affiche le résultat
<? echo $total[0];?>
Sauf que ce coup là, il compte les colonnes au lieu de compter les points!
Comment pourrais je faire pour qu'il compte les points et non les colonnes selon vous?
Re: Comment additioner des nombres en php?
Posté : 22 août 2009, 18:01
par Victor BRITO
Et en procédant comme suit ?
$points_a_ajouter = int (800); // Par exemple
$query = "UPDATE Game SET point = point + ".$points_a_ajouter." WHERE myusername='".$_SESSION['myusername']."'";
Re: Comment additioner des nombres en php?
Posté : 23 août 2009, 22:15
par Ryle
Tu peux aussi utiliser la fonction SUM de sql que t'a signalé charabia...
Re: Comment additioner des nombres en php?
Posté : 23 août 2009, 22:39
par arkhon21
C'est bon, j'ai trouvé
$sql = "SELECT SUM(point) FROM Game where myusername='{$_SESSION ['myusername']}'";
$res = mysql_query($sql) or die(mysql_error());
$total = mysql_result($res,0);
Puis j'affiche le résultat
<? echo $total;?>
Maintenant, il me reste plus qu'a afficher la valeur 0 si il n'y a rien a additionner.
<?
echo $total;
if (empty($total)) {
echo $total="0";
}
?>
Merci a tous pour votre aide !!!!!
Re: Comment additioner des nombres en php?
Posté : 24 août 2009, 00:43
par AB
Maintenant, il me reste plus qu'a afficher la valeur 0 si il n'y a rien a additionner.
<?
echo $total;
if (empty($total)) {
echo $total="0";
}
?>
Merci a tous pour votre aide !!!!!
Tu pourrais faire plus concis pour le même résultat.
Si c'est uniquement pour l'affichage :
echo !empty($total)? $total : 0;
Si pour l'affichage et utilisation ultérieure de la variable $total :
$total = !empty($total)? $total : 0;
echo $total;
//ou variante des deux lignes ci-dessus mais que je trouve moins lisible
echo !empty($total)? $total : $total = 0;
Re: Comment additioner des nombres en php?
Posté : 24 août 2009, 22:28
par Ryle
Modération :
Si ta question est résolue, pense à l'indiquer pour que les futures personnes qui voudront consulter ce sujet sachent qu'il contient une solution.
Tu peux réaliser cette opération toi-même en cliquant sur le bouton
en haut à droite de la réponse qui te semble la plus pertinente.