Page 1 sur 1

faire des sous totaux dans mon tableau,

Posté : 13 mai 2007, 08:42
par finceo
bonjour je cherche a faire des sous totaux dans mon tableau, mais la boucle ne s'arrete jamais !! help !

Code : Tout sélectionner

<?php $i=0; mysql_data_seek($Rs1, $i); if ($totalRows_Rs1 !== 0) { while ($i<=($totalRows_Rs1-1)) { $totmission=0; $totcollab=0; $sauvmission=$row_Rs1['type_mission']; $sauvcollab=$row_Rs1['nom_collab']; while (($sauvmission==$row_Rs1['type_mission']) and ($sauvcollab==$row_Rs1['nom_collab']) and ($i<=($totalRows_Rs1-1))) { ?> <tr> <td><?php echo $row_Rs1['date_intervention']; ?></td> <td><?php echo $row_Rs1['heure_intervention']; ?></td> <td><?php echo $row_Rs1['commentaire']; ?></td> <td><?php echo $row_Rs1['validee']; ?></td> <td><?php echo $row_Rs1['budget']; ?></td> <td><?php echo $row_Rs1['nom_collab']; ?></td> <td><?php echo $row_Rs1['prenom_collab']; ?></td> <td><?php echo $row_Rs1['txhoraire']; ?></td> <td><?php echo $row_Rs1['nom_client']; ?></td> <td><?php echo $row_Rs1['type_mission']; ?></td> <td><?php echo $row_Rs1['couhoraire']; ?></td> </tr> <?php $totcollab=$totcollab+$row_Rs1['couhoraire']; $totmission=$totmission+$row_Rs1['couhoraire']; while (($i<=($totalRows_Rs1-1)) and ($sauvmission==$row_Rs1['type_mission']) and ($sauvcollab!==$row_Rs1['nom_collab'])) { ?> <tr> <td><?php echo "totcollab"; ?></td> <td><?php echo $totcollab; ?></td> </tr> <?php $totcollab=0; while (($i<=($totalRows_Rs1-1)) and ($sauvmission!==$row_Rs1['type_mission']) and ($sauvcollab!==$row_Rs1['nom_collab'])) { ?> <tr> <td><?php echo "totmission"; ?></td> <td><?php echo $totmission; ?></td> </tr> <?php $totmission=0; $i++; if ($i<=$totalRows_Rs1-1) { mysql_data_seek($Rs1, $i); $row_Rs1= mysql_fetch_assoc($Rs1); } } } } } }?>

Posté : 13 mai 2007, 11:45
par Ryle
Utilise des "&&" à la place des "and" en php, ils n'ont pas le même effet et cela peut avoir des résultats très différents.

Ceci dit pour ta boucle infini, je ne vois pas où tu modifies $i... donc si $i est égal à zéro au début et que le test du while est vrai, il le sera toujours puisque $i ne varie pas ;)