faire des sous totaux dans mon tableau,

Petit nouveau ! | 2 Messages

13 mai 2007, 08:42

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); } } } } } }?>

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

13 mai 2007, 11:45

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 ;)
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...