Bonjour,
J'essaie de monter un calendrier/agenda. Je voudrais qu'une fois mes rendez-vous enregistrés dans mon agenda, les jours du calendrier correspondants aux dates de rendez-vous s'affichent de couleur différentes.
J'ai utilisée une boucle "for" pour parcourir tous les jours du mois un à un.
Voici ma boucle :
Mon problème c'est que cette boucle ne boucle pas : j'ai 3 événements en septembre (les 14, 15 et 20) or seul le 14 s'affiche dans mon calendrier comme étant un événement (class="caseEven"). Les événements du 15 et 20 restent marqués comme des jours sans rien (class="case").
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32 //pour afficher les evenements existants $sql = 'SELECT * FROM agenda WHERE mois_even = '.$month.' AND annee_even = '.$year.' ORDER BY jour_even ASC;'; $result = mysql_query ($sql, $cnx) or die('Erreur : '.mysql_error()); $RsAgenda = mysql_fetch_array($result); //affiche tous les jours du mois actuel for ($i = 1; $i <= $jours_mois; $i++) { //de 1 a 30 (ou 31) jours //si c'est aujourd'hui if (($jouractuel==$i) && ($moisactuel==$month)) { //si c'est un evenement if (($RsAgenda[1]==$i) && ($RsAgenda[2]==$month)) { echo ('<td width="15" class="caseActifEven"><a href="?y='.$year.'&m='.$month.'&d='.$i.'">'.$i.'</a></td>'); } else { //si ce n'est pas un evenement echo ('<td width="15" class="caseActif">'.$i.'</td>'); } } else { //tous les autres jours //si c'est un evenement if (($RsAgenda[1]==$i) && ($RsAgenda[2]==$month)) { echo ('<td width="15" class="caseEven"><a href="?y='.$year.'&m='.$month.'&d='.$i.'">'.$i.'</a></td>'); } else { //si ce n'est pas un evenement echo ('<td width="15" class="case">'.$i.'</td>'); } } $case++; if ($case%7==0){ //si on arrive a dimanche aller a la ligne echo ('</tr><tr>'); }//fin du if }//fin du for
Quelqu'un pourrait me dire ce que j'ai mal fait ou oublié ?
Merci.
Partager