DOUBLONS !

Petit nouveau ! | 2 Messages

20 sept. 2006, 10:25

Bonjour à tous,

Je cherche un solution pour ne pas afficher sur ma page php les doublons.
Voiçi ma table :
Image
Vous voyez qu'il y a des enregistrements qui vont se repeter lorsque je vais faire une requete pour selection tous ca. Avec ma boucle while j'affiche ca dans un tableau comme suivant :
Image
Je voudrai donc afficher un tableau qui n'affiche qu'un seul fois le resultat s'il y a doublons ; visuellement voici ce que ca donnerai :
Image
Je pense que ca doit pouvoir se faire via php mais je ne veux pas utiliser un DISTINCT et puis de toute facon ca ne me retourne pas tous les reultats.
Merci pour votre aide !

ViPHP
ViPHP | 3607 Messages

20 sept. 2006, 10:31

Bonjour,
tu peux stocker tes résultats dans un tableau, et ensuite dans ta boucle while, tu faits un test du genre:
if($tab[$i-1]['categorie']==$tab[$i]['categorie']){
 echo '&bnsp;';
} else {
  echo $tab[$i]['categorie'];
}

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

20 sept. 2006, 10:50

Sans passer par un tableau, tu peux simplement stocker la valeur de catégorie dans une variable temporaire et ainsi la comparer à la suivante :)
$oldCateg = ""; // catégorie temporaire

while (...) { 

  if($categorie != $oldCateg) { // si ta catégorie est différente de la précédente
    echo "<td>".$categorie."</td>"; // tu l'affiches
    $oldCateg = $categorie; // et tu met à jour la catégorie temporaire
  }
  else // si elles sont identiques
    echo "<td>&nbsp;</td>"; // tu met juste une cellule vide :)
...
}

Invité
Invité n'ayant pas de compte PHPfrance

20 sept. 2006, 14:08