par
Yosh » 09 déc. 2008, 16:41
Merci pour ta réponse mais ce n'est pas tout ça fait ça :
en fait j'affiche un calendrier dans un tableau linéaire (sur une seule ligne quoi) et je connais le numéro de jour dans chaque cellule. Je voudrais maintenant retranscrire ce numéro de jour en vraie date SQL.
J'utilise aussi évidement une variable $annee qui varie selon l'année choisie.
Ok, ce n'est pas très clair mais si je comprend bien tu a un tableau avec des numéro de jour (de 1 a 365 voir 364 selon que l'année soit bisextil ou pas) ainsi qu'une variable année, c'est cela?
Si oui regarde ce code et modifie le afin qu'il s'adapte à ce que tu veux faire.
Je ne peux malheureusement pas tester d'ou je me trouve :/ mais je pense que cela devrait répondre à ta demande.
$jour_dans_le_mois = array();
$mois = 1;
$jour = 0;
for($a=1;$a<=365+date('L');$a++) {
// On compte les jours de chaque mois
for($i=1;$i<=12;$i++) {
$jour += date('t', mktime(0, 0, 0, $i, 1, date('Y')));
$jour_dans_le_mois[$i] = $jour;
}
$today = mktime(0, 0, 0, $mois, $a, date('Y'));
$semaine = date('W', $today);
$mardi = date('N', $today);
$date = date('d-m-Y', $today);
if(in_array($a, $jour_dans_le_mois)) $mois++;
if($semaine == 35 && $mardi == 2) {
echo "Le jour n°".$a." de la date ".$date." est le Mardi de la semaine 35 pour l'année ".date('Y'); break; }
}
Si jamais cela te convient et que tu trouve la solution, merci de la poster ^^
Bon courage.
[quote="bozo"]Merci pour ta réponse mais ce n'est pas tout ça fait ça :
en fait j'affiche un calendrier dans un tableau linéaire (sur une seule ligne quoi) et je connais le numéro de jour dans chaque cellule. Je voudrais maintenant retranscrire ce numéro de jour en vraie date SQL.
J'utilise aussi évidement une variable $annee qui varie selon l'année choisie.[/quote]
Ok, ce n'est pas très clair mais si je comprend bien tu a un tableau avec des numéro de jour (de 1 a 365 voir 364 selon que l'année soit bisextil ou pas) ainsi qu'une variable année, c'est cela?
Si oui regarde ce code et modifie le afin qu'il s'adapte à ce que tu veux faire.
Je ne peux malheureusement pas tester d'ou je me trouve :/ mais je pense que cela devrait répondre à ta demande.
[php]
$jour_dans_le_mois = array();
$mois = 1;
$jour = 0;
for($a=1;$a<=365+date('L');$a++) {
// On compte les jours de chaque mois
for($i=1;$i<=12;$i++) {
$jour += date('t', mktime(0, 0, 0, $i, 1, date('Y')));
$jour_dans_le_mois[$i] = $jour;
}
$today = mktime(0, 0, 0, $mois, $a, date('Y'));
$semaine = date('W', $today);
$mardi = date('N', $today);
$date = date('d-m-Y', $today);
if(in_array($a, $jour_dans_le_mois)) $mois++;
if($semaine == 35 && $mardi == 2) {
echo "Le jour n°".$a." de la date ".$date." est le Mardi de la semaine 35 pour l'année ".date('Y'); break; }
}
[/php]
Si jamais cela te convient et que tu trouve la solution, merci de la poster ^^
Bon courage.