Calcul colonne d'un tableau

Eléphant du PHP | 424 Messages

25 juin 2008, 15:45

Bonjour à tous!

J'ai un tableau de ce type :
<table width="58%" border="0" cellpadding="0" cellspacing="0" class="tableau-resultats">
                                      <tr>
                                        <td width="18%" align="center">Fournisseur</td>
                                        <td width="15%" align="center">Immat</td>
                                        <td width="29%" align="center">Véhicule</td>
                                        <td width="17%" align="center">Type</td>
										<td width="21%" align="center">Montant</td>
								      </tr>
                                      <tr>
                                        <td align="center">&nbsp;</td>
                                        <td align="center">&nbsp;</td>
                                        <td align="center">&nbsp;</td>
                                        <td align="center">&nbsp;</td>
                                        <td align="center">&nbsp;</td>
                                      </tr>
<?php 
mysql_select_db($database_ATS, $ATS);
$immatriculation = $_GET['test'];
			$sqldip = 'select tb_factures.id_factures, tb_factures.id_fournisseur, tb_factures.immat, tb_factures.date, tb_factures.num_facture, tb_factures.vehicule, tb_factures.type, tb_factures.montant, tb_fournisseurs.id_fournisseur, tb_fournisseurs.nom_fournisseur
			    from tb_factures, tb_fournisseurs
				WHERE tb_factures.immat = "'.$immatriculation.'" 
				AND tb_factures.id_fournisseur = tb_fournisseurs.id_fournisseur ORDER BY id_factures DESC';
		$case=0;		
				//$sqldip = 'select * from tb_news where affiche = 1 AND date <= "'.$date.'" order by id_news DESC LIMIT 0,6';
   // $nbsql += 1;
	if ($resselectdip = mysql_query($sqldip)) {
		while ($selectdip = mysql_fetch_array($resselectdip))
        
		 {	
	//$date2 =  $selectdip['date'];	
	//$date1 = date('j/m/Y', $date2); 
		 $case = $case + 1;
			
			if (($case % 2 ) == 0)
				$color = 'bgcolor="#FFFF89"';
			else
				$color = "";
						 				
      echo'<tr '.$color.'> 
                <td align="center" height="15" valign="middle">'.$selectdip['nom_fournisseur'].'</td>
                <td align="center">'.$selectdip['immat'].'</a></td>
				<td align="center">'.$selectdip['vehicule'].'</td>
				<td align="center">'.$selectdip['type'].'</td>
				<td align="center">'.$selectdip['montant'].'</td>
           </tr>'; 
		   
	  }
	  } 
	  ?>
</table>
Je souhaite effectuer la somme total de la colonne montant. Pourriez vous me guider ?

Merci d'avance.
Youpi Youpi Yo !

Mammouth du PHP | 1353 Messages

25 juin 2008, 15:48

Bonjour,

Tu peux le faire de deux façons :

Soit en php en déclarant une variable
$montant_total = 0;
et après dans ton while, à chaque itération tu additiones la nouvelle valeur :
$montant_total += $selectdip['montant'];
Soit directement en SQL tu peux récupérer la somme (fonction SUM) de la colonne tb_factures.montant AS montant_total et utiliser après la variable $selectdip['montant_total']

Exemple :

Code : Tout sélectionner

SELECT SUM(salaire) as masse_salariale FROM employes
Tell me and I forget. Teach me and I remember. Involve me and I learn.

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

25 juin 2008, 15:53

Modération :
Merci de ne pas abuser des capitales dans ton titre.
C'est moins lisible et ça n'apporte rien de plus.
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 | 424 Messages

25 juin 2008, 16:48

Désolé pour le titre en majuscule...

Ca fonctionne parfaitement merci pour votre aide....
Youpi Youpi Yo !