Forums Rue-Montgallet.com
Rue-Montgallet.comRue-Hardware.comRue-Occasion.comRue-DVD.comRue-Jeuxvideo.comRue-AudioVideo.comRue-Telephone.comForums
S'inscrire | S'identifier |
| Recherche avancée | Aide
 
 

13 utilisateurs inconnus

 Mot :   Pseudo :  
 
Bas de page
Auteur
 Sujet :

Question sur la date du serveur

 
n°15660
ArkSer78
Profil : Membre
Posté le 08-01-2006 à 02:49:24  profilanswer
 

Voilà je vous expose mon probleme !
 
L'année dernière j'ai créé un site internet ou j'inclue un journal qui s'appelle "trait d'union" qui parait mensuellement (mais il n'y a pas de numéro qui parraissent en juillet et aout)
Chaque mois je créé une nouvelle page, et j'inclue dans la meme page la liste des numéros précédents. Mais comme je ne voulais pas m'embeter a modifier ce fichier chaque mois, j'ai essayer d'inclure automatiquement les numéros des mois précédents. Tout marchait bien mais depuis qu'on est en 2006 ca plante !
 
Il m'affiche seulement le numéro de janvier 2005, plus les autres !
 
Alors je pensais que mon probleme venait de la date que mon code prenait en compte.
 
Voici mon bout de code qui concerne mon probleme :
 
 
<DIV class="entete">LES ARCHIVES DU TRAIT D'UNION</DIV><br>
<DIV class="corp"><center>
<?php
   // Ce script permet de determiner le numero du Trait d'Union du mois en cours
   // Premier Trait d'Union paru  ==>  numero 60 de Janvier 2005
   $NumTU = 60;
   // Recherche de l'annee et du mois en cours
   $An = date("Y" );
   $Ms = date("n" );
   // Determination du dernier numero theorique du Trait d'Union
   if($An = 2005) {
       $NumTU = $NumTU + ($Ms - 1);
   }
   else {
       $NumTU = $NumTU + (12 * ($An - 2005)) + ($Ms - 1);
   }
   // Sauvegarde des variables Mois et Annee
   $Mois = $Ms;
   $Annee = $An;
   // Premier Trait d'Union paru  ==>  numero 60 de Janvier 2005
   For ($i=$NumTU;$i>=60;$i--) {
     // Determination du mois de parution du TU
     switch ($Mois) {
        case 1 :
           $Periode = "Janvier ".$Annee;
           break;
        case 2 :
           $Periode = "Février ".$Annee;
           break;
        case 3 :
           $Periode = "Mars ".$Annee;
           break;
        case 4 :
           $Periode = "Avril ".$Annee;
           break;
        case 5 :
           $Periode = "Mai ".$Annee;
           break;
        case 6 :
           $Periode = "Juin ".$Annee;
           break;
        case 7 :
           $Periode = "Septembre ".$Annee;
           break;
        case 8 :
           $Periode = "Octobre ".$Annee;
           break;
        case 9 :
           $Periode = "Novembre ".$Annee;
           break;
        case 10 :
           $Periode = "Décembre ".$Annee;
           break;
      }
      if (file_exists($Localisation.$i."tu.inc.php" )) {
         // Si le fichier est present on affiche le lien
         echo "<a href='index.php?page=".$i."tu' class='corplink'>Numéro ".$i." de ".$Periode."</a><br><br>";
      }
      // On passe au mois precedent
      if ($Mois == 1) {
         $Mois = 12;
         $Annee =$Annee - 1;
      }
      else {
         $Mois = $Mois - 1;
      }
   }
?>
</center></DIV>
 
 
 
Si vous voyez d'ou peut venir mon probleme, merci de m'aider a le résoudre. Je pense qu'il vient de la mais j'en suis pas sur :
 $An = date("Y" );
 $Ms = date("n" );
 
 
@+

n°15675
ArkSer78
Profil : Membre
Posté le 10-01-2006 à 11:22:09  profilanswer
 

Bon j'ai trouvé la solution :
Il suffisait d'écrire ca :

Citation :

if($An == 2005) {
       $NumTU = $NumTU + ($Ms - 1);
   }
   else {
       $NumTU = $NumTU + (12 * ($An - 2005)) + ($Ms - 1);
   }
   // Sauvegarde des variables Mois et Annee
   $Mois = $Ms;
   $Annee = $An;


 
En PHP, la comparaison se fait en mettant == et non = !
 
Merci de m'avoir lu

n°16056
nayluge
c le plu bo jour de ma vie ...
Profil : Habitué
Posté le 12-03-2006 à 03:20:57  profilanswer
 

mais de rien :lol:


Aller à :
Ajouter une réponse