webForumDet fria alternativet

Kalender med veckovy

8 svar · 478 visningar · startad av learn

learnMedlem sedan jan. 20051 130 inlägg
#1

Jag håller på att bygga en kalender i PHP. Månadsvyn är klar men nu vill jag även att man skall kunna se en vecka i taget. Någon som har lite tips på vilken metod jag kan använda. Kanske rent av det finns något script för detta att ladda hem ngn stans... Jag är lite nybörjare när det gäller PHP.

Tack så mkt!!!

learnMedlem sedan jan. 20051 130 inlägg
#2

Någon som kan hjälpa stackars mig??

PeddaMedlem sedan juni 20006 032 inlägg
#3

Hur har du tänkt dig att bygga upp det?
Ska man kunna växla mellan månads eller veckovisning?

Ger dig ett exempel på hur du får fram veckonummer, så har du något att tänka på. ;)

$idag = date("Y-m-d");
$vecka = date('W',strtotime($idag));
learnMedlem sedan jan. 20051 130 inlägg
#4

okej, en bra början! går det på ngt sätt få fram vilket datum det är första dagen en given vecka? dvs vilket datum det är på måndagen det veckonummer som man får ut genom PHP-koden ovan.

learnMedlem sedan jan. 20051 130 inlägg
#5

letade lite på php.net men hittade inget av intresse... Finns det någon funktion/något sätt att få fram datumet på måndagen ett givet veckonummer??

K@llenMedlem sedan mars 20032 667 inlägg
#6

Kanske kan detta vara en hjälp på traven?
http://www.a-kok.com/php/datumundervecka.php

learnMedlem sedan jan. 20051 130 inlägg
#7

Tackar k@llen! En snabb fråga bara hur får jag reda på vilken månad det är ett given veckonummer?

K@llenMedlem sedan mars 20032 667 inlägg
#8

learn skrev:

Tackar k@llen! En snabb fråga bara hur får jag reda på vilken månad det är ett given veckonummer?

Lite kruxigt med tanke på skottår m.m. Tror dock att detta som jag hittade på phpportalen.net, när jag själv byggde kalender för någor år sedan, ska kunna funka. Jag har inte hittat någon bugg ännu i varje fall. :)

$week = 19;
$year  = 2005;
 
$monday = strtotime('last monday', strtotime('+'.(($week-1)*7).' days', mktime(0,0,0,1,1,$year)));
 
if(date('W',$monday) != $week)
        $monday += 3600 * 24 * 7;
 
print date('F', $monday);
learnMedlem sedan jan. 20051 130 inlägg
#9

fungerar perfekt, tack igen!

132 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)