webForumDet fria alternativet

Bryta sönder Funktion?!?!

ASP

16 svar · 434 visningar · startad av Coccozz

Medlem sedan apr. 20032 072 inlägg
Frågan#1

Hej!
Jag håller på och pysslar lite här hemma vid burken och har stött på vissa problem. Det beror på att jag i min databas har olika händelser, påminnelser eller vad vi nu ska kalla de sparade under olika datum. Då ligger Dag med som "dd" månad som "mm" och år som "yyyy". Sedan vill jag då presentera en tabell med varje veckodag. dvs. Jag har alltså en tabell där det står;

---MÅNDAG---TISDAG---osv

Sedan skall man kunna klicka på måndag förutsatt att det finns någon händelse inlagd på måndag, men problemet ligger i att jag måste ha den aktuella måndagens datum utskrivet så att ja har en variabel som motsvarar "dd" en som motsvarar "mm" och en som motsvarar "yyyy".
Därför behövs en funktion som skriver ut alla datum i den aktuella veckan och sedan bryter ner de till dessa variabler. Hoppas ni förstår.
Tack på Förhand//

Medlem sedan apr. 20032 072 inlägg
#2

Ingen som förstår? Vad jag menar är att jag vill ha den aktuella veckans alla datum (v.37) som sedan automatiskt uppdateras. Det vill säga den här veckan vill jag att funktionen ger; 6/9, 7/9 osv. tills 12/9. Sen vill jag bryta sönder så jag får dagens datum för sig, månaden för sig. Sedan skall då den aktuella dagens datum i formen ("DAG")-("MÅNAD")-("ÅR") jämföras med databasen för att se vad som finns att visa just den här dagen.

Medlem sedan juni 200032 967 inlägg
#3

http://www.webforum.nu/showthread.php?s=&postid=440042#post440042

Resten är väl bra övning?

Medlem sedan apr. 20032 072 inlägg
#4

Jo, d e detta scriptet ja har idag, plus ett som generar aktuellt veckonummer, frågan är hur jag lyckas bryta isär datumen.

Medlem sedan apr. 20032 072 inlägg
#5

Ingen som vet? Bara ett litet litet tips? Snälla. Någon måste väl veta hur man får ut dagen, månaden och året för sig av datumen i en viss vecka?

Medlem sedan juni 200032 967 inlägg
#6

DatePart()

Medlem sedan apr. 20032 072 inlägg
#7

Hmmm....har nu hårdkollat detta och fattat det som att jag kan be databasen söka efter "startday+6" som skall visa första dagen iveckan och de sex kommande.
Då kommer vi till det nya problemet.
Strängen startday ser ut såhär

<%Startday = DatePart("d", date, firstdayofweek, 2)%>

Vilket ger ett felaktigt reultat, istället för att visa första dagen i veckans datum, så ger den dagens datum. Sessutom kommer inte den här funktionen att fungera över månadsskiften.

Medlem sedan juni 200032 967 inlägg
#8

Well, funktionen returnerar det du ber om, dvs vilken dag det är idag. Istället för date får du skicka in datumet som tillhör veckans första dag (måndag normalt). Istället för firstdayofweek (har du skapat den variabeln, och vad innehåller den?) så ska du slänga in vbMonday för att säga att i Sverige börjar våra veckor på måndagar. I den sista parametern kan du skicka in konstanten vbFirstFourDays istället. Vad betyder 2?

Medlem sedan apr. 20032 072 inlägg
#9

Hmmm...nej, jag har inte gjort den. Sökte på första dagen i veckan. Det är ju ganska dumt om jag ska sitta och plita in dagens datum, det är ju det som skriptet är till för.
Att ta fram aktuell vecka och första dagens datum.

Medlem sedan juni 200032 967 inlägg
#10

Ja? Und die Problem sind? (förutom att jag inte kan tyska alltså, men det löser vi knappast här och nu... ;-) )

Medlem sedan apr. 20032 072 inlägg
#11

Problemet är att jag inte har ett skript som tar fram första dagen i den aktuella veckan... :D

Medlem sedan juni 200032 967 inlägg
#12

Men, det får man väl av LarsGs kod som jag länkade till? :o

Medlem sedan apr. 20032 072 inlägg
#13

Jo, fast det var där mina problem med datepart började och jag fattade noll. Nu är jag ganska förvirrad. Men om du kunde komma med ett konkret förslag på hur jag lyckas få ut aktuella veckans datum med dag och månad för sig. År är ointressant. Alttihop som en funktion, så att jag senare kan åropa denna funktion, elr datumen då. Kan du fixa det här @nders så är jag dig evigt tacksam. Hoppas att jag skall fatta det här andra sen också men just nu ser jag bara stjärnor. :(

Medlem sedan apr. 20032 072 inlägg
#14

Ingen som har något att komma med? :o

Medlem sedan juni 200032 967 inlägg
#15
<%
'Här kommer LarsGs kod!
weekno = 37
y = 2004

firstday = y & "-01-01"
fweek = datepart("ww", firstday)
if fweek > 1 then
   startday = dateadd("d",8-weekday(firstday,vbmonday),firstday)
else
   startday = dateadd("d",-6-weekday(firstday,vbmonday),firstday)
end if

startday = dateadd("ww",weekno,startday)
endday = dateadd("d",6,startday)

' jag har inte riktigt förstått vad du vill göra, så här kommer en loop.
for tempday = startday to endday
    intDay = DatePart("d", tempday, vbMonday, vbFirstFourDays)
    intMonth = DatePart("m", tempday, vbMonday, vbFirstFourDays)
    intYear = DatePart("yyyy", tempday, vbMonday, vbFirstFourDays)
    response.write intyear & "-" & intmonth & "-" & intday & "<br>"
    ' gör vad som nu ska göras
next
%>
Medlem sedan apr. 20032 072 inlägg
#16

@nders... Efter hård tankeverksamhet har jag nu tänkt ut en idé som bör funka, och hur jag skall förklara den ;).
Den koden som jag fick av dig är strålande. Nu vill jag gå vidare och få ut en funktion som jag kan åberopa på olika ställen i koden. Funktionen skall ge tre värden för varje dag i veckan.
T.ex.
<%=MonDate%> Blir datumet i måndags (13 denna veckan)
<%=MonMonth%> Blir månaden (9 i detta fallet)
<%=MonYear%> Blir året (2004 nu)
Sedan skall jag kunna åberopa dett även för tisdag, onsdag osv. Datumet skall vara för den aktuella veckan. Vet inte om detta går att lösa? Är nog det enda sättet som funkar med min databsformatering. Tack på förhand

Medlem sedan apr. 20032 072 inlägg
#17

Ingen som förstår vad jag menar???

259 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
122 ms — deklarationer (db)
0 ms — hämta statistik (cache)
134 ms — hämta tråd, inlägg och bilagor (db)
122 ms — ändringar (db)