On Sat, 14 Sep 2002 22:54:28 +0200, "Johannes Veje" <jv@jv-data.dk>
wrote:
>Jeg skal bruge et script som i tidsrummet fra 16/12 og frem til 1/6
>fortæller antal dage frem til 1/6, altså et antal dage (tal)
>i tidsrummet fra 16/6 til 1/12 skal den også fortælle antal dage frem til
>1/12
>Fra 1/6 til 15/6 og igen 1/12 til 15/12 skal scriptet skrive en tekst for
>mig.
>Jeg har prøvet med følgende, men det virker bare røv og nøgler, er der en
>barmhjertig sjæl der kan se hoved og hale i mit problem ?
Når du nu har fundet ud af, at der er en funktion, der hedder
DateDiff, hvorfor bruger du så ikke den til det hele
Når du bruger fx:
tid1 = "1/6"
så er det jo ikke en dato, men en tekststreng og sammenligning med en
dato vil sjældent give et fornuftigt resultat.
Desuden kan man ikke bruge "dobbelte mindre end":
a < b < c
Du kunne sikkert også få gavn af DateSerial-funktionen:
Returns a Variant of subtype Date for a specified year, month, and
day.
Syntax: DateSerial(year, month, day)
En mulig løsning kunne være:
<%
datTimeStart = date
' Brug denne linie til at teste med:
' datTimeStart = DateSerial(2002, 1, 1)
If Month(datTimeStart) < 6 Then
dage = DateDiff("d", datTimeStart, DateSerial(Year(datTimeStart), 6,
1))
ElseIf DateDiff("d", datTimeStart, DateSerial(Year(datTimeStart), 6,
16)) > 0 Then
dage = "indskud nu"
ElseIf Month(datTimeStart) < 12 Then
dage = DateDiff("d", datTimeStart, DateSerial(Year(datTimeStart),
12, 1))
ElseIf DateDiff("d", datTimeStart, DateSerial(Year(datTimeStart), 12,
16)) > 0 Then
dage = "indskud nu"
Else
dage = DateDiff("d", datTimeStart, DateSerial(Year(datTimeStart) +
1, 6, 1))
End If
Response.Write dage
%>
NB: Vær lige opmærksom på at fjerne linieombrud i koden.
Good luck!
--
Jørn Andersen,
Brønshøj