webForumDet fria alternativet

räkna ut datum

ASP

18 svar · 340 visningar · startad av Cactuz

Medlem sedan okt. 2001670 inlägg
Frågan#1

jag behöver ett script som tar dagens datum o subtraherar med ett annat datum o räknar ut hur många dagar-månader-år det är emellan

Medlem sedan juni 200032 967 inlägg
Medlem sedan okt. 2001670 inlägg
#3

får den inte o funka :(

fattade inte så mkt heller :P

Medlem sedan juni 200032 967 inlägg
#4

Hur ser din kod ut då?

Medlem sedan okt. 2001670 inlägg
#5

DateDiff(interval, 19-10-1987,30-1-2001)

Function DiffADate(theDate)
DiffADate = "Days from today: " & DateDiff("d", Now, theDate)
End Function

response.write(""&DiffADate&"")

den är säkert totalt fel :)

Medlem sedan juni 200032 967 inlägg
#6

Det var inte helt rätt nej, men man kan ju inte göra rätt varje gång. :)

Function DiffADate(theDate)
DiffADate = "Days from today: " & DateDiff("d", Now, theDate)
End Function

response.write DiffADate(Cdate("19-10-1987"))

[r]: Du kan prova att skriva datumet i andra format också om det inte skulle fungera, exempelvis 1987-10-19.

Mvh,

[Redigerat av @nders den 30 jan 2002]

Medlem sedan dec. 200012 464 inlägg
#7
Function DiffADate(theDate)
  DiffADate = "Days from today: " & DateDiff("d", theDate,Now())
End Function

response.write DiffADate(cdate("19-10-1987"))

------------------
essentitia preter non sans multiplicandum

Medlem sedan okt. 2001670 inlägg
#8

jo.. nu skriver den -<massa dagar>

jag vill att den visar upp i t.ex år lr nått

EDIT: fixade o byta d mot yyyy... nu visar den -15.. fast egentligen tkr jag att den borde visa -14 o sen skulle det vara kul o slippa -

[Redigerat av Cactuz den 30 jan 2002]

Medlem sedan dec. 200012 464 inlägg
#9

Datediff tar det sista datumet minus det första, därför får du ett negativt tal.

Om du vill ha antalet hela år:

Function DiffADate(theDate)
  DiffADate = "Years from today: " & round(DateDiff("d", theDate,now())/365.25)
End Function

------------------
essentitia preter non sans multiplicandum

[Redigerat av LarsG den 30 jan 2002]

Medlem sedan okt. 2001670 inlägg
#10

tack! nu funkar det perfekt :)

Medlem sedan okt. 2001670 inlägg
#11

nu använder jag

<%
dag = rs("dag")
manad = rs("manad")
ar = rs("ar")

Function DiffADate(theDate)
DiffADate = round(DateDiff("d", theDate,now())/365.25)
End Function
response.write DiffADate(Cdate(""&dag&"-"&manad&"-"&ar&""))

%>

o får felmeddelandet: Syntaxfel

Medlem sedan okt. 2001670 inlägg
#12

nån måste ju veta

Medlem sedan juni 200032 967 inlägg
#13

Det är nog något fält som har ett felaktigt värde i sig.

Vad får du om du bara skriver ut detta:

response.write dag & "-" & manad & "-" & ar))

Mvh,

Medlem sedan okt. 2001670 inlägg
#14

syntaxfel

Medlem sedan juni 200032 967 inlägg
#15

Det beror nog mest på att det är jag som klipper fel.

Sorry.

Prova igen:

response.write dag & "-" & manad & "-" & ar

Mvh,

Medlem sedan okt. 2001670 inlägg
#16

fortfarande samma fel

Medlem sedan dec. 200012 464 inlägg
#17
response.write DiffADate(DateSerial(ar,manad,dag))

Det fungerar inte om ar manad eller dag innnehåller null så du behöver lägga till en kontroll för detta

if not isnull(ar) and not isnull(manad) and not isnull(dag) then
response.write DiffADate(DateSerial(ar,manad,dag))
else
response.write "Inget datum givet"
end if

------------------
essentitia preter non sans multiplicandum

Medlem sedan okt. 2001670 inlägg
#18

nu har jag

<%
dag = rs("Alder_dag")
manad = rs("Alder_manad")
ar = rs("Alder_ar")

Function DiffADate(theDate)
DiffADate = round(DateDiff("d", theDate,now())/365.25)
End Function

if not isnull(ar) and not isnull(manad) and not isnull(dag) then
response.write DiffADate(DateSerial(ar,manad,dag))
else
response.write "Inget datum givet"
end if

%>

o får syntaxfel ändå

Medlem sedan dec. 200012 464 inlägg
#19

På vilken rad får du felet?

Gissning: Du har funktionsdefinitionen inuti en loop.

------------------
essentitia preter non sans multiplicandum

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