31. januar 2005 - 15:33Der er
11 kommentarer og 2 løsninger
Udregne alder automatisk
Jeg søger en kode der kan regne min alder ud. Jeg skriver på en hjemmeside at mit barn er 1 år, men når barnet så fylder år glemmer jeg at rette det. Kan man udfylde en kode, hvor man indtaster fødselsdagen og så trækker den det selv fra dags dato.
Så npr hun fylder fødselsdag d. 21.02.05 bliver teksten 1 år rettet til 2 år, uden jeg skal gøre noget.
Bruger selv denne funktion til det samme, som også giver antal måneder frem til 8 år:
Function CalculateYears(sDate) Dim nMaaneder, nYears, sReturnVal nMaaneder = Int(DateDiff("m", DateValue(sDate), Date, Now)) nYears = int(nMaaneder/12) if nYears = 0 then CalculateYears = CStr(nMaaneder - (nYears * 12)) + " mnd." else CalculateYears = Cstr(nYears) + " år" If month(sDate) <> month(Now) or day(sDate) <> day(now) then If nYears < 8 then CalculateYears = CalculateYears + " og " + CStr(nMaaneder - (nYears * 12)) + " mnd." If nYears > 20 then CalculateYears = "" Else If nYears <= 20 then CalculateYears = CalculateYears + " i dag!! <IMG SRC='images/Flag_dk1.gif' WIDTH='24' HEIGHT='16' BORDER='0' ALT='Dansk flag'>" Else CalculateYears = "- Fødselsdag i dag!! <IMG SRC='images/Flag_dk1.gif' WIDTH='24' HEIGHT='16' BORDER='0' ALT='Dansk flag'>" End If End If end if End Function
Lidt forklaring til scriptet. Scriptet bruges bl.a. til at sette et flagg ved siden af alderen (skal så legge et bilde med navnet Flag_dk1.gif i en undermapper med navn images) , hvids der er fødselsdag. Samtidig vises alter som år og måndere frem til 8 år, og alder vises ikke over 20 år. Det kan selvfølgelig tilpasses som ønsket.
<% d = "13-02-1986" ' skriv fødselsdagen her agey = DateDiff("yyyy", d, Now()) If DatePart("y", d) > DatePart("y", Now()) Then agey = agey - 1 End If Response.Write CStr(agey) %>
og sæt koden ind der hvor du vil have alderen skrevet,
eller endnu bedre:
sæt dette i toppen af siden:
<% session.lcid 0 1030 d = "13-02-1986" ' indsæt fødseldagen her agey = DateDiff("yyyy", d, Now()) If DatePart("y", d) > DatePart("y", Now()) Then agey = agey - 1 End If 'Response.Write CStr(agey) alder = Cstr(agey) %>
og så der hvor du vil have alderen sætter du blot dette ind:
<%=alder%>
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.