Tableau dynamique sans repetition de champs [Résolu]

Signaler
Messages postés
209
Date d'inscription
jeudi 12 janvier 2006
Statut
Membre
Dernière intervention
10 octobre 2014
-
Messages postés
2
Date d'inscription
dimanche 7 janvier 2007
Statut
Membre
Dernière intervention
18 juin 2007
-
salut tout le monde!

Je vous expose le probleme

En fait je voudrais faire un tableau a partir d'un base de données!

Sachant que je fais ca car les champs peuvent augmenter ou diminuer mais mon probleme n'est pas la!

En fait je fais cette requete la!!:

"SELECT nom_typedechet, nom_typestat, nombre_kg

FROM type_dechet, typestat, histstattypedechet

WHERE type_dechet.id_typedechet = histstattypedechet.id_typedechet

AND typestat.id_typestat = histstattypedechet.id_typestat

ORDER BY type_dechet.id_typedechet DESC";

Le probleme c'est qu'apres quand je veux afficher le tableau je fais ca :



<?php

while($tableau = mysql_fetch_array($resultat_tonnage))

{

?>

----

<?php echo ucwords($tableau[0]); ?> |

----
<?php echo ucwords($tableau[1]); ?>

<?php echo ucwords($tableau[2]); ?>

<?php

}

?>




Mais ce qui est chiant c'est qu'il me repete les nom_typedechet a
chaque fois alors que je voudrais qu'il me le mette une fois et
qu'apres il passe tous les champs en revue qu'il me les ecrive avec
leur nombre correspondant a coté et ceci pour chaque type de dechet de
ma table!

Je ne sais pas si je me suis bien exprimer!

Si vous voulez de plus amples infos n'hesitez pas a me contacter je bouge pas je reste a travailler la!!!



merci d'avance a tous et bonne prog!




Niko14

4 réponses

Messages postés
1406
Date d'inscription
mercredi 17 août 2005
Statut
Membre
Dernière intervention
28 août 2007
8
Salut...

Ce que je comprends :

Tu obtient de tableau
truc A 12
truc B 53
truc C 35
hop A 45
hop B 56
hop C 323

Mais tu voudrais ça
truc A 12
B 53

C 35

hop A 45

B 56

C 323

Alors, dans ce cas :

<?php
$old = '';
while($tableau = mysql_fetch_array($resultat_tonnage))
{
?>
----

<?php
if($old!=$tableau[0]) {
echo ucwords($tableau[0]);
$old = $tableau[0];
}
?>
|
<td><?php echo ucwords($tableau[1]); ?>

<?php echo ucwords($tableau[2]); ?></td>

<?php
}
?>

Et là ça devrait le faire...

Au plaisir !
Messages postés
1216
Date d'inscription
mardi 20 décembre 2005
Statut
Membre
Dernière intervention
18 octobre 2012
5
essaie avec une boucle for peut être
$resultat_tonnage= mysql_db_query($sql_bdd,$REQUETE,$db_link);
$nb=mysql_num_rows($resultat_tonnage);

for($i=0;$i<$nb;$i++)
{
$TD=mysql_result($resultat_tonnage,$i,"nom_typedechet") ;
$TS=mysql_result($resultat_tonnage,$i,"nom_typestat") ;
$NK=mysql_result($resultat_tonnage,$i,"nombre_kg ") ;

echo '<tr>';
if($i!=0) $TDP=mysql_result($resultat_tonnage, $i-1 ,"nom_typedechet") ; //type precedent

if ($TDP! =$TD)
echo '<td>$TD</td>';
else
echo '<td>&nbsp;</td>';

echo '<td>$TS</td>';
echo '<td>$NK</td>';

echo '</tr>';
}
...
A tester
Messages postés
209
Date d'inscription
jeudi 12 janvier 2006
Statut
Membre
Dernière intervention
10 octobre 2014

Alors la J_G merci beaucoup pour ton aide je dois dire que ca marche impecablement bien et je te suis tres reconnaissant!!

il me reste plus qu'a me debrouiller pour afficher le <th> centré par rapport aux autres lignes et c'est le fête du slip!!

Merci beaucoup de ton aide et aussi a toi sidf!!!

A bientot pour un prochain probleme!!!

Avec des developpeurs comme vous la france va remonter dans les meilleurs evemloppeurs mondiaux!!!

Niko14
Messages postés
2
Date d'inscription
dimanche 7 janvier 2007
Statut
Membre
Dernière intervention
18 juin 2007

je ss nouvelle ds se forum et je ss certaine ke je serrai satisfaite