[Resolu] Récupérer le mois à partir du numero de semaine

Récupérer le mois à partir du numero de semaine [Resolu] - PHP - Programmation

Marsh Posté le 24-05-2005 à 15:34:45    

Bonjour tout le monde !
Je cherche à récupérer le nom du mois ou au moins le numéro du mois à partir d'un numéro de semaine.
Pour ceux qui ont pas bien compris, la semaine n°2 est en janvier, la semaine n°6 en février, etc...
Jvoudrai faire ça car mon boss prend ses rdv suivant les semaines et il aimerait bien voir à quel mois appartient cette semaine ? (il est vrai que c'est pas évident de savoir à quel date est la semaine 43...)
 
Vous pensez que l'on peux faire ca?
 
Merci d'avance !


Message édité par yakob59 le 25-05-2005 à 15:05:40
Reply

Marsh Posté le 24-05-2005 à 15:34:45   

Reply

Marsh Posté le 24-05-2005 à 15:51:38    

tu veux pas plutot le contraire?
genre $semaine = date("W",mktime(0,0,0,$mois,$jour,$annee);
 
sinon j'ai développer une fonction similaire sauf que en faite ca me retourne le lundi et le dimanche suivant le numero de semaine et l'annee, mais le code est assez barbare


Message édité par dedefou le 24-05-2005 à 15:52:32
Reply

Marsh Posté le 24-05-2005 à 15:57:05    

J'ai relu et j'ai bien exprimé ce que je voulais :
je rentre un numéro de semaine (ainsi que l'année c'est vrai), et le script me renvoie le mois associé.
J'aimerai bien voir ton code, ca m'aidera surement ;)

Reply

Marsh Posté le 24-05-2005 à 16:10:48    

ok je me suis apuyer sur les semaine iso et la norme pour faire ca: (n'es pas peur :D )
 
 

Code :
  1. //function qui retourne le nombre de jour entre le 1er jour de l'annee et le premier jeudi de l'annee
  2. function premier_jour($annee)
  3. {
  4. $jeudi = "Thursday";
  5. $jour = 1;
  6. while(date("l",mktime(0,0,0,1,$jour,$annee)) != $jeudi)
  7.      {
  8.         $jour++;
  9.      }
  10.    
  11. $nb_jour = 7 - $jour;
  12. return ($nb_jour);
  13. }
  14. //fin funcion premier jour
  15. /*--------------------------------------------------*/
  16. /*--------------------------------------------------*/
  17. //function qui retourne le numero du jeudi suivant la semaine
  18. function jeudi_semaine($annee,$semaine)
  19. {
  20. $jeudi_semaine = date("d/m/Y",mktime(0,0,0,1,(($semaine)*7)-premier_jour($annee),$annee));//tu cas remplace ici pour avoir le mois  
  21.  
  22. return $jeudi_semaine;
  23. }
  24. //fin function jeudi semaine
  25. /*--------------------------------------------------*/
  26. //appel de la function
  27. $jeudi_semaine = jeudi_semaine($annee,$semaine);


 
ca manque d'explication mais bon ca fonctionne :)


Message édité par dedefou le 24-05-2005 à 16:13:08
Reply

Marsh Posté le 24-05-2005 à 16:16:52    

j'calcule rien à ton code la !
Enfin vite fait quoi...
Et ca renvoie quoi alors à la fin ? :-p
 

Reply

Marsh Posté le 24-05-2005 à 16:19:26    

lol bah si a la place de :

Code :
  1. # /*--------------------------------------------------*/
  2. # //function qui retourne le numero du jeudi suivant la semaine
  3. # function jeudi_semaine($annee,$semaine)
  4. #     {
  5. #     $jeudi_semaine = date("d/m/Y",mktime(0,0,0,1,(($semaine)*7)-premier_jour($annee),$annee));//tu cas remplace ici pour avoir le mois   
  6. #   
  7. #   
  8. #     return $jeudi_semaine; 
  9. #     }
  10. # //fin function jeudi semaine
  11. # /*--------------------------------------------------*/
  12. # //appel de la function
  13. # $jeudi_semaine = jeudi_semaine($annee,$semaine);


tu mets ca:

Code :
  1. # /*--------------------------------------------------*/
  2. # //function qui retourne le numero du jeudi suivant la semaine
  3. # function jeudi_semaine($annee,$semaine)
  4. #     {
  5. #     $mois = date("m",mktime(0,0,0,1,(($semaine)*7)-premier_jour($annee),$annee));//tu cas remplace ici pour avoir le mois   
  6. #   
  7. #   
  8. #     return $mois; 
  9. #     }
  10. # //fin function jeudi semaine
  11. # /*--------------------------------------------------*/
  12. #
  13. #
  14. #
  15. # //appel de la function + test
  16. $annee = 2005;
  17. $semaine = 21;
  18. $mois= jeudi_semaine($annee,$semaine);
  19. echo $mois;


 
tu aura le mois suivant le numero de la semaine et de l'annee
 
n'oublie la 1ere function aussi sinon ca marcheras pas


Message édité par dedefou le 24-05-2005 à 16:21:35
Reply

Marsh Posté le 24-05-2005 à 16:27:06    

le problème vas etre pour les semaines a cheval sur 2 mois, mais je te laisse chercher :)

Reply

Marsh Posté le 25-05-2005 à 08:36:38    

merci dedefou pour ton aide, ca marche a présent ! :)

Reply

Marsh Posté le 25-05-2005 à 08:48:03    

de rien ;)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed