Faire la multiplication de valeur d'une table mysql sur X ligne et les aditionne

Signaler
Messages postés
9
Date d'inscription
dimanche 24 septembre 2006
Statut
Membre
Dernière intervention
30 décembre 2007
-
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
-
Bonjour , je voudrais pouvoir faire une petite boutique perso pour un jeu sur le net ...
J'ai donc créer une table mysql djoos qui reprend les infos suivantes .

id         especes a vendre        quantite          prix boutique min        prix boutique max       prix coo min         prix coo max          prix marcher

0                    ail                100                0,36                          0,50                0,60              0,80                  0,90

Il me reste juste à calculer quelque résultats.
Je voudrais si possible calculer la multiplication de quantité par prix boutique min et de le faire pour chaque id et pour finir faire la somme des valeurs obtenue. Je ne voudrais afficher que le résultat total .

Idem pour quantite et prix boutique max .....

Pourriez vous m'aider à terminer ma création ??

Comme je suis débutant, je me permet de mettre le petit bout de code qui me permet d'afficher mon tableau.
Pourriez vous m'indiquer si je fait quelque erreur ??

<?php
mysql_connect("localhost", "*****", "***"); // Connexion à MySQL
mysql_select_db("****"); // Sélection de la base coursphp
 
$reponse = mysql_query("SELECT * FROM djoos ORDER BY especes_a_vendre "); // Requête SQL
 
// On fait une boucle pour lister tout ce que contient la table :
 
while ($donnees = mysql_fetch_array($reponse) )
{
?>

//affichage du tableau

<td width="10%" Valign="top" ><?php echo $donnees['id_phenix']; ?></td>
<td width="10%" Valign="top" ><?php echo $donnees['especes_a_vendre']; ?></td>
<td width="10%" Valign="top" ><?php echo $donnees['quantite']; ?></td>
<td width="10%" Valign="top" ><?php echo $donnees['prix_boutique_min']; ?></td>
<td width="10%" Valign="top" ><?php echo $donnees['prix_boutique_max']; ?></td>
<td width="10%" Valign="top" ><?php echo $donnees['prix_coo_min']; ?></td>
<td width="10%" Valign="top" ><?php echo $donnees['prix_coo_max']; ?></td>
<td width="10%" Valign="top" ><?php echo $donnees['prix_marcher']; ?></td></tr>

D'avance merci à vous tous .

Djoos

10 réponses

Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
23
Hello,

un truc du genre :
SELECT SUM(quantite * prix_boutique_min) somme1, SUM(quantite, prix_boutique_max) somme2 FROM djoos GROUP BY id_phenix
Messages postés
9
Date d'inscription
dimanche 24 septembre 2006
Statut
Membre
Dernière intervention
30 décembre 2007

Merci de votre réponse.

sa donnerais quelque chose comme sa ?
$test = SELECT SUM(quantite * prix_boutique_min) somme1, SUM(quantite, prix_boutique_max) somme2 FROM djoos GROUP BY id_phenix

En quoi correspond somme 1 , somme 2

apres il me suffirais d'afficher la valeur de $test par <?php echo( "".$test."\n" ) ?>

Merci
djoos
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
23
ce sont des alias. Tu pourras ainsi les appeler facilement, comme des noms de champs.
Dans ton exemple, ça donnerait echo $donnees['somme1']; par exemple.
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
23
Mais pas $test = ...
c'est une requête! Tu dois faire un mysql_query() sur cette requête. Puis un mysql_fetch_array() pour récupérer les résultats. Enfin bref, comme avant...
Messages postés
9
Date d'inscription
dimanche 24 septembre 2006
Statut
Membre
Dernière intervention
30 décembre 2007

Je ne comprend pas ... n'y aurais t'il pas un exemple pour que je puisse le faire ?

je cherche sur google , j'ai trouver des exemples mais juste pour la fonctions que vous venez de m'expliquer. Rien ne m'indiquant la marche a suivre pour y arriver ...

Un genre au site du zero ...

Merci d'avance.

Djoos
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
23
Ben tu remplaces la requête dans
$reponse = mysql_query("SELECT * FROM djoos ORDER BY especes_a_vendre "); // Requête SQL
par la mienne!
Et tes echo $donnees['...'] par les noms des alias : somme1 et somme2
C'est tout.
Messages postés
9
Date d'inscription
dimanche 24 septembre 2006
Statut
Membre
Dernière intervention
30 décembre 2007

Merci sa fonctionne parfaitement . Je me demande maintenant comment faire pour reprendre juste la somme de toutes les valeurs que l'on receuille .

Voici ma page ...   http://www.djoos.123.fr/info.php

Encore merci .

Djoos
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
23
echo $donnees['somme1'] + $donnees['somme2'];
Messages postés
9
Date d'inscription
dimanche 24 septembre 2006
Statut
Membre
Dernière intervention
30 décembre 2007

Je ne pense pas que vous m'avez comprit ...

Avec le mysql fetch aray sa retourne ligne par ligne les valeurs ...

Se que je voudrais c'est rassembler les valeurs en les aditionnants ...

Somme 1 et somme 2 sont deux additions différentes .

<?php
mysql_connect("localhost", "***", "****");
mysql_select_db("****");
 
$reponse = mysql_query("SELECT SUM(quantite) somme1, (quantite *  prix_boutique_min) somme2, (quantite *  prix_boutique_max) somme3, (quantite * prix_coo_min) somme4, (quantite * prix_coo_max) somme5,  (quantite * prix_marcher) somme6  FROM phenixland GROUP BY id_phenix ");


while ($donnees = mysql_fetch_array($reponse) )
{
?>

Encore merci d'avance pour l'aide que vous m'apporter .

Djoos
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
23
Tu n'as pas fait ce que je t'ai dit. Su tu faisais la somme dans ta requête, tu l'aurais.
Si tu veux récupérer ET la somme sur chaque ID? et la somme totale, alors tu dois procéder ainsi et faire la somme au fur et à mesure que tu récupères les données.