Total d'un resultat

Eléphant du PHP | 450 Messages

08 juil. 2005, 14:32

Rerererebonjour tout le monde

(et oui la politesse est important pour moi :wink: )

Bon mon nouveau probleme est assez compliqué (pour moi lol )

j'ais des resultats qui s'affiche dans l'un de mes tableaux
(le tableau est une boucle )

et j'aimerais les ajouter pour obtenir une valeur (en gros le total du prix de tout les produits )

et jme demandais comment batir ma requete pour additionner tout les resultats ..

voici mon tableau et mes requete preliminaire :
if(isset($_POST['supp'])){
$list=$_POST['supp'];
for($i=0;$i<count($list);$i++) 
{
    $rqSql= "DELETE FROM commande WHERE nom='$list[$i]'";
    $result3 = mysql_query( $rqSql, $link) or die( "Suppression impossible.");
    }
} 
echo $rqSql;
$select = "SELECT * from commande ";

$result = mysql_query($select,$link) or die ('Erreur : '.mysql_error() );

$row = mysql_num_rowS($result);

if ($row >=1)
{
echo "<h3><strong>Table des commandes</strong></h3>";
echo "<BR><FORM method=\"POST\" action='commande.php'><table border=1>";
echo "<th>Nom</th><th>Quantité</th><th>Nombre d'unité</th><th>Fournisseur</th><th>Prix à l'unité</th><th>Prix totale</th><th>Prix avec reduction</th><th>Numero de cas</th><th>Date</th><th>initiale</th><th>Supprimer</th>";

while ($voir = mysql_fetch_assoc($result)) {

$selec= "SELECT reduction from fournisseur where fournisseur2 like  '".$voir['fournisseur']."'";
$result2 = mysql_query($selec,$link) or die ('Erreur : '.mysql_error() );
$voir2 = mysql_fetch_assoc($result2);

$reduc = $voir2['reduction'];
$reduc2 = preg_replace("#,#", ".", $reduc);

if ($reduc2==0)
{
$reduction = $voir['prix_total'];
}
else
{
$reduction = $voir['prix_total']*$reduc2;
}
$nom = $voir['nom'];
echo"<tr>
<td><font face='Verdana' size='2'>$nom</font></td>
<td><font face='Verdana' size='2'>".$voir['quantite']."</font></td>
<td><font face='Verdana' size='2'>" .$voir['nombre_quantite']. "</font></td>
<td><font face='Verdana' size='2'>" .$voir['fournisseur']. "</font></td>
<td><font face='Verdana' size='2'>" .$voir['prix']. "</font></td>
<td><font face='Verdana' size='2'>" .$voir['prix_total']. "</font></td>
<td><font face='Verdana' size='2'>$reduction</font></td>
<td><font face='Verdana' size='2'>" .$voir['numero_cass']. "</font></td>
<td><font face='Verdana' size='2'>" .$voir['date']. "</font></td>
<td><font face='Verdana' size='2'>" .$voir['initiale']. "</font></td>
<td><font face='Verdana' size='2'><div style=\"text-align:center;\"><input type=\"checkbox\" name=\"supp[]\" value=\"$nom\"></div></font></td></tr>";
}
echo "<tr><td colspan=11><div style=\"text-align:center;background-color:#ffffff;\"><input type=\"submit\" value=\"supprimer\">
<input type=\"submit\" value=\"Imprimer\" onclick=\"print();\">
<input type=\"submit\" value=\"fermer\" onClick=\"window.close()\";></div></TD></tr>";
echo "</table></form>"; 
}
maitenant je voudrait afficher la valeur total de tout mes produits

donc $reduction de tout mes resultats ..

est ce quelqun a une idée de la façon dont je dois procédé?
Alone in the dark , I smile :D

Modérateur PHPfrance
Modérateur PHPfrance | 6037 Messages

08 juil. 2005, 14:35

Modération : si tu veux construire une requête, je propose de le mettre dans "Base de données"

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

08 juil. 2005, 14:39

pas moyen de faire ce total directement en SQL ?

j'ai regardé vite fait et je vois pas quels résultats tu veux ajouter là-dedans

sinon en PHP, à chaque tour de boucle tu fais un truc genre
$total += $prix

et voilà

tu es contre l'identation du code sinon ? :lol:

Eléphant du PHP | 450 Messages

08 juil. 2005, 14:44

lol

En gros pour mieu m'expliquer
dans le tableau on peu voir le prix de chaque produit
hors dans mon tableau j'ai plusieur produit et je cherchais le moyen d'additioner les prix de chacun afin d'avoir a la fin ..

le total de votre commande est de .... :)

enfin tu vois le genre lol

sinon
tu es contre l'identation du code sinon ? Laughing
tu veu dire koi par la?? :lol: :lol:
Alone in the dark , I smile :D

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

08 juil. 2005, 14:46

et bien à chaque ligne de commande que tu affiches tu additionnes au total le prix de l'article concerné

qui doit être là-dedans :
<td><font face='Verdana' size='2'>" .$voir['prix']. "</font></td>
<td><font face='Verdana' size='2'>" .$voir['prix_total']. "</font></td> 
prix_total je pense qui doit tenir compte du nombre

et tu as à la fin une variable $total qui contient la somme des prix

et je veux dire par là que tout ton code (quasiment) est aligné à gauche, si c'est le fait de poster pas grave, si c'est pareil dans ton document : pas lisible ;)

Eléphant du PHP | 450 Messages

08 juil. 2005, 14:55

enfaite prix_total correspond au nombre de commande de chaque produit

exemple 3litre d ethanole =8€ si jen commande 3 pack sa me fera ....24€
(zavez vu sans aide de la calculette en plus lol )
mais apres jaimerais aditionner ces 24€ a par exemple 140 euros de nitro etc..
et c la que sa me pose probleme car je ne sait pas comment batir sa ..

$total = totale des prix_total de toute les commandes

je peu fair sa comment ?

$total = $prix_total + $prix_total .....

ps j'ai toujours eu la fleme de faire des ecart sur le coté pour mieu voir mon code mais du moment que je mi retrouve c'est l'essentiel nan? :lol: :lol:

vive les bordelik ;)
Alone in the dark , I smile :D

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

08 juil. 2005, 15:01

ps j'ai toujours eu la fleme de faire des ecart sur le coté pour mieu voir mon code mais du moment que je mi retrouve c'est l'essentiel nan? :lol: :lol:
c'est vrai que c'est très fatiguant...

mais là tu as 2 if et un while, tu verras quand tu auras ça * 10, et que tu repasseras 6 mois après
ou pire : tu reprends le code de quelqu'un d'autre
mmmmm
vive les bordelik ;)
NON ! :lol:

bref, pour ton problème, je ne le vois pas justement (le problème)

si tu as plusieurs lignes de commande, que tu parcours dans une boucle
et que dans chaque tu as des infos, dont le nbre d'articles, le prix unitaire et donc le prix total

et bien à chaque tour de boucle tu rajoutes le prix total au total de la commande
$prix_total_commande = 0;
while (il y a des lignes de commande) {
   $nb_article;
   $prix_unitaire;
   $prix_total = $nb_article * $prix_unitaire; // et encore toi tu l'as déjà si j'ai bien compris
   $total_commande += $prix_total;
}
et voilà, rien de plus simple

ou alors y'a un truc que j'ai pas suivi :roll:

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

08 juil. 2005, 15:10

ps j'ai toujours eu la fleme de faire des ecart sur le coté pour mieu voir mon code mais du moment que je mi retrouve c'est l'essentiel nan? :lol: :lol:
c'est vrai que c'est très fatiguant...
Mouais ....

faire un tab, c'est pas astreigant, c'est une habitude à prendre

tu préfère lire ça :
if () {
    if(){
        while(){
            if (){

            }
        }
    } else {

    }
}else {
    while() {
        if() {

        } else {
            while() {

            }
        }
    }
}
ou ça
if ()
{
if()
{
while()
{
if ()
{
}
}
} 
else
{
}
}else
{
while()
{
if()
{
} 
else
{
while()
{
}
}
}
}
:wink:
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

08 juil. 2005, 15:12

heu on est bien d'accord que ça
c'est vrai que c'est très fatiguant...
c'était légèrement ironique ;)

parceque je veux pas être assimilé aux bordéliques moi...

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

08 juil. 2005, 15:14

Mais tu sais bien mon cher ouckileou que je suis toujours de ton avis :wink:
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Eléphant du PHP | 450 Messages

08 juil. 2005, 15:14

lol bon vous aimez pas les bordelique ok j'ais compris j e m'en vait et tocccc lol

sinon sa marche nikel merci Ouckileou :wink:

c'etait tellement bette comem probleme que j'en ai mem un tit peu honte :oops: :oops: lol
Alone in the dark , I smile :D