Calendrier annuel, surligné jours en fonction d'une table

rouskard Messages postés 26 Date d'inscription mardi 26 février 2008 Statut Membre Dernière intervention 17 mars 2008 - 7 mars 2008 à 00:46
RyoSaebaSG1 Messages postés 10 Date d'inscription mercredi 27 novembre 2002 Statut Membre Dernière intervention 21 février 2011 - 21 févr. 2011 à 08:45
Bonjour à tous,

J'ai un petit problème dans l'élaboration d'un calendrier annuel. J'aimerais pouvoir faire ressortir les jours où une personne a eu un arrêt. Je vais dabord présenter le code et ensuite je poserai mon problème.

<?php
// Récuperation des variables passées, on donne l'année
if(!isset($_GET['annee'])) $num_an = date("Y"); else $num_an = $_GET['annee'];

// tableau des mois...
$tab_mois = array("","Janv.","Fevr.","Mars","Avri.","Mai","Juin","Juil.","Aout","Sept.","Octo.","Nove.","Dece.");

 // tab_cal[Jour du mois][mois]
$tab_cal = array(array(),array(),array(),array(),array(),array());
?>

<html>
<head><title>Calendrier</title>
</head>

    //création des liens pour pouvoir naviguer entre les différentes années
    ----
">&lt;&lt;&nbsp;&nbsp;<?php echo $num_an;  ?>&nbsp;&nbsp;">>>,

   
    <?php
   
    //affichage du nom des mois
    echo'----
';
    for($i = 1; $i <= 12; $i++)
    {
        echo('  '.$tab_mois[$i].' , ');
    }
    echo'';
   
   
    //affichage des jours
    for($i=1;$i<31;$i++)
    {
        echo \"----
\";
        for($j=01;$j<13;$j++)
        {
            //initialisation des variables(i étant la valeur du jour et j la valeur du mois)
            $num_jour=$i;
            $num_mois=$j;
           
            //si la valeur du jour < 10 alors rajouter un 0 devant cette valeur
            if($num_jour < 10)
                $num_jour='0'.$num_jour ;
            else
                $num_jour=$num_jour ;
           
            //si la valeur du mois < 10 alors rajouter un 0 devant cette valeur
            if($num_mois < 10)
                $num_mois='0'.$num_mois ;
            else
                $num_mois=$num_mois ;
               
            //requete sql sélectionnant les arrets d'une personne
            $requeteDate =\"SELECT numero_arret, numero_personne, date_arret FROM  arret WHERE numero_personne='1'\";           
            $resultatDate = mysql_query($requeteDate);
            $si_arret.='';
            while ($donnees = mysql_fetch_object($resultatDate))
            {
                list($date_annee, $date_mois, $date_jour ) = explode('-', $donnees->date_arret);
                               $si_arret (($num_mois $date_mois && $num_an == $date_annee && $num_jour == $date_jour)?' style=\"color: #FFFFFF; background-color: #000000;\"':null);
            }
           
            //afiichage de mon tableau en fontion des different arret de la personne
            echo \"".((strpos($num_jour,"*")!==false)?''.str_replace("*","",$num_jour).'':$num_jour).", \";
        }   
        echo \"\";
    }
   
?>

</html>

Mon problème est au niveau de la colorisation des jours d'arrêt, en effet, mon affichage des jours de chaque mois se fait dans le dernier "echo" et il devrait aussi surligner tous les jour d'arrêt mais en fait ici il surligne seulement le dernier jour d'arrêt. Je ne peux pas intégrer cet "echo" dans mon while... Si quelqu'un a une idée sur la marche à suivre cela m'intéresserais énormément

1 réponse

RyoSaebaSG1 Messages postés 10 Date d'inscription mercredi 27 novembre 2002 Statut Membre Dernière intervention 21 février 2011
21 févr. 2011 à 08:45
Salut, je ne suis que débutant aussi mais il faudrit simplement, je pense, mettre ton echo dans ton while ;)

En esperant que cela auras pu t'aider ^^



.oO° Ryo Saeba [SG1}- °Oo.
-=; "La chance souris aux esprits avertis" ;=-
0
Rejoignez-nous