IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

EDI, CMS, Outils, Scripts et API PHP Discussion :

problème d'affichage de date


Sujet :

EDI, CMS, Outils, Scripts et API PHP

  1. #1
    Membre confirmé Avatar de Commodore
    Homme Profil pro
    Business manager
    Inscrit en
    Février 2004
    Messages
    599
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Business manager

    Informations forums :
    Inscription : Février 2004
    Messages : 599
    Points : 632
    Points
    632
    Par défaut problème d'affichage de date
    Bonjour,
    je suis débutant en php.
    Je dois développer un agenda, pour ce faire, je dois inclure un calendrier.
    Mon calendrier est une table dans laquelle je peux sélectionner une date. Mais j'aimerais afficher la date sélectionnée en gros juste à côté. Je n'arrive pas à récupérer la date du calendrier...

    Voici le bout de code concerné...

    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
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
     
    function AfficheCalendrier ($Jour,$Mois,$Annee,$evenement) {
     
       // definitions complementaires
       $NomDuMois=array("erreur","Janvier","Fevrier","Mars","Avril","Mai","Juin","Juillet","Aout","Septembre","Octobre","Novembre","Decembre");
       $Week= array("l","m","M","j","v","s","d"); // debut d'affichage =lundi
       // controle pour les valeurs par default
       if (isset($Jour)) {}else{$Jour=date("j" );} // jour courrant par default
       if (isset($Mois)) {}else{$Mois=date("n" );} // mois courrant par default
       if (isset($Annee)){}else{$Annee=date("Y");} // annee courrante par default
       if (isset($Page)) {}else{$Page=$_SERVER['PHP_SELF'];} // script d'appel par default
       // ajustement des variables du script
       $NoJour = 2 - date("w",mktime(0,0,0,$Mois,1,$Annee)); // determine le decalage du 1er dans la semaine
       if ($NoJour >1) { $NoJour -=7;} // on s'assure du debut de l'affichage a la 1ere ligne du tableau
       $JourMax =date("t",mktime(0,0,0,$Mois,1,$Annee)); // nombre de jours dans le mois
       $Liens = 0; // compteur du tableau des liens
       $cejour = date($Jour." ".$Mois." ".$Annee); // la date actuelle 1 12 2005
     
       // affichage du debut de calendrier ( le mois et l'année )
     
       // mois et annee avant
       $annee_avant = $Annee;
       $mois_avant = $Mois-1; if ($mois_avant==0){ $mois_avant = 12;$annee_avant--; }
     
       // mois et annee apres	
       $annee_apres = $Annee;
       $mois_apres = $Mois+1; if ($mois_apres==13){ $mois_apres = 1;$annee_apres++; }
     
       print "
       <TABLE class=\"Mois\">
     
    <tr class=\"titre\"><td colspan=\"7\">
     
        <a href=\"index.php?cal_j=".$Jour."&cal_m=".$mois_avant."&cal_a=".$annee_avant."&selec_j=".
    $_GET["selec_j"]."&selec_m=".$_GET["selec_m"]."&selec_a=".$_GET["selec_a"]."\">&lt;&lt;</a>
        <A class=\"MoisAnnee\"NAME=\"$NomDuMois[$Mois]_$Annee\">&nbsp;$NomDuMois[$Mois] $Annee&nbsp;</A>
        <a href=\"index.php?cal_j=".$Jour."&cal_m=".$mois_apres."&cal_a=".$annee_apres."&selec_j=".
    $_GET["selec_j"]."&selec_m=".$_GET["selec_m"]."&selec_a=".$_GET["selec_a"]."\">&gt;&gt;</a>
       </td></tr>
       <TR class=\"S\">\n";
     
    // Affichage des jours de la semaine ( L 	M 	M 	J 	V 	S 	D )
     
       for ( $w=0;$w<7;$w++){
         print " <TD class=\"e".$w."\">".strtoupper($Week[$w])."</TD> \n";
       }
       print " </TR>\n";
     
     
       // creation du calendrier
     
       for ($semaine=1;$semaine <=6;$semaine++) { // 6 semaines par mois
         print " <TR class=\"S$semaine\">\n";
         for ($journee=1;$journee <=7;$journee++) { // 7 jours par semaine
           if ("$NoJour $Mois $Annee"==$cejour) { // est ce le jour actuel ?
           print " <TD class=\"J\">"; // si oui on utilise la surbrillance
           }else{
           print " <TD class=\"J".date("w",mktime(0,0,0,$Mois,$NoJour,$Annee))."\">";
           }
           if ($NoJour >0 && $NoJour <= $JourMax ){ // si le jour est valide a afficher
    		if (isset($evenement[$NoJour])){ echo '<a href="'.$evenement[$NoJour].'">'.$NoJour.'</a>'; } else { print $NoJour; }
           }else{
              print"&nbsp;"; // afficher un espace si jour non valide
           }
           $NoJour ++; // incremente le jour
         print "</TD>\n"; // on passe au jour suivant
         }
         if ($NoJour >= $JourMax){ $semaine ++; } // on echappe la derniere ligne si vide
         print " </TR>\n"; // semaine suivante
       }
       print "</TABLE>\n"; // le mois est affiche
     
       }
      /****************************************************************/
    //l'erreur est quelque part ici je pense. ça marche quand on saisit une date comme écrit ici mais sinon il ne fait rien.
     
    $ev = array
    ( 1 => "index.php?cal_j=".$_GET["cal_j"]."&cal_m=".$_GET["cal_m"]."&cal_a=".$_GET["cal_a"]."&selec_j=1&selec_m=12&selec_a=2005",
    2 => "index.php?cal_j=".$_GET["cal_j"]."&cal_m=".$_GET["cal_m"]."&cal_a=".$_GET["cal_a"]."&selec_j=2&selec_m=12&selec_a=2005");
    			   // ev[1] = "test.php";
    			   // ev[3] = "truc.php";
       AfficheCalendrier($_GET["cal_j"],$_GET["cal_m"],$_GET["cal_a"],$ev);
       ?>
    Merci d'avance si vous pouvez m'éclairer...
    Moi, j'aime pas facebook.

    Musiciens de France

  2. #2
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 235
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 235
    Points : 15 532
    Points
    15 532
    Par défaut
    comment est sélectionnée la date ?
    montre nous une page d'exemple

  3. #3
    Membre confirmé Avatar de Commodore
    Homme Profil pro
    Business manager
    Inscrit en
    Février 2004
    Messages
    599
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Business manager

    Informations forums :
    Inscription : Février 2004
    Messages : 599
    Points : 632
    Points
    632
    Par défaut
    je n'ai rien en ligne mais le calendrier est un tableau. Il faut cliquer dans les cases pour sélectionner une date.
    Moi, j'aime pas facebook.

    Musiciens de France

Discussions similaires

  1. Problème d'affichage de date
    Par koaxe dans le forum Windows Mobile
    Réponses: 3
    Dernier message: 22/10/2007, 10h07
  2. Réponses: 1
    Dernier message: 27/06/2007, 08h44
  3. Problème d'affichage de date dans un Label
    Par L'aigle de Carthage dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 04/05/2007, 09h00
  4. Problème d'affichage de date dans une base de donnée
    Par Gouyon dans le forum C++Builder
    Réponses: 7
    Dernier message: 11/04/2007, 07h57
  5. Problème d'affichage de date sous access 2003
    Par FuNkY48 dans le forum Access
    Réponses: 7
    Dernier message: 11/12/2006, 14h04

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo