Sha-ka | Bonjour,
Je tente de faire apparaitre les plantes mellifères, fruits et légumes des mois en cours, mais j'ai un petit souci au niveau des plantes mellifères, autant les 2 premiers mois tout s'affiche nickel, autant par la suite ils se répètent une puis à plusieurs reprises, pour mieux visualiser le problème, voici la page en question : http://co-nexion.com/page/allsaisons
Le code
Code :
- <?php
- $db = Zend_Registry::get('database');
- echo "<center><h1>Plantes méllifères, aromates, fruits, légumes, salades et champignons de saison</h1></center><br /><br />";
- $mois = array("", "Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet", "Août", "Septembre", "Octobre", "Novembre", "Décembre" );
- for ($i = 1; $i <= 12; $i++)
- {
- $select1 = "SELECT * FROM saisonapicole WHERE Mois='$mois[$i]'";
- $toElect1 = $db->fetchAll($select1, array(), Zend_Db::FETCH_ASSOC);
- echo '<center><h3>' . $mois[$i] . '</h3></center>';
- $OldCat1 = '';
- foreach ($toElect1 as $elect1)
- {
- $Fleurs=$elect1['Fleurs'];
- $Cat1 = $elect1['Categorie'];
- if (($OldCat1 == '') || ($Cat1 != $OldCat1))
- {
- // si on est en début d'itération (OldCat vide)
- // OU qu'on a changé de catégorie (OldCat et Cat différents)
- // afficher le nom de catégorie ET l'aliment
- echo '<br /><strong>Plantes méllifères</strong> : ' . $Fleurs;
- } else
- {
- // sinon afficher juste l'aliment précédé d'une virgule
- echo ', ' . $Fleurs;
- }
- $OldCat1 = $Cat1; // mettre a jour l'ancienne catégorie avec la courante pour le test a la prochaine itération
- }
- echo "<br />";
- $select = "SELECT * FROM saison WHERE Mois='$mois[$i]' ORDER BY Categorie";
- $toElect = $db->fetchAll($select, array(), Zend_Db::FETCH_ASSOC);
- $OldCat = '';
- foreach ($toElect as $elect)
- {
- $Cat = $elect['Categorie'];
- $Aliment = $elect['Nom'];
- if (($OldCat == '') || ($Cat != $OldCat))
- {
- // si on est en début d'itération (OldCat vide)
- // OU qu'on a changé de catégorie (OldCat et Cat différents)
- // afficher le nom de catégorie ET l'aliment
- echo '<br /><strong>' . $Cat . 's</strong> : ' . $Aliment;
- } else
- {
- // sinon afficher juste l'aliment précédé d'une virgule
- echo ', ' . $Aliment;
- }
- $OldCat = $Cat; // mettre a jour l'ancienne catégorie avec la courante pour le test a la prochaine itération
- }
- echo "<br /><br />";
- }
- ?>
|
Les tables : saison : Id, Nom, Categorie, Mois
saisonapicole : Id, Fleurs, Mois, Special, Categorie
Pourriez vous m'aider à résoudre ce problème ? D'avance merci. |