webForumDet fria alternativet

If Date större än datum

ASPur ASP

16 svar · 494 visningar · startad av Janspeed

Medlem sedan jan. 2001510 inlägg
Frågan#1

Läser ett svenskt datum från en textfil och lägger den i variabeln datum

'Datumet ser ut så här i filen:  2001-04-24
datum = T.ReadLine

sedan vill jag jämföra datumet med dagens datum nånting så här:

If date > datum then 

....

End If

Finns det något smidigt sätt att lösa detta på?

Tacksam för svar :)

//JANspeed

Medlem sedan jan. 2001510 inlägg
#2

Glömde att tillägga att jag la till raden:

Session.LCID = 1053

längst upp i koden.

Medlem sedan juni 200032 967 inlägg
#3
if date > cdate(datum) then

mvh,

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
all your base are belong to us!</A>

Medlem sedan dec. 19998 577 inlägg
#4

Berätta gärna vad som inte fungerar... :)

Konvertera din textsträng du får ifrån filen med Cdate():

datum = Cdate(T.ReadLine)

------------------
Budweiser - Slightly contaminated water... probably harmless, but I would recommend boiling before you drink it...
webEye.nu SweQuake.com

Medlem sedan jan. 2001510 inlägg
#5

Jag provade med CDate och utan men det funkar inte.


Microsoft VBScript runtime error '800a000d' 

Type mismatch: 'CDate'

Response.Write IsDate(Datum) ger false

Medlem sedan juni 200032 967 inlägg
#6

då ser inte datumet i textfilen korrekt ut...

response.write datum

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
all your base are belong to us!</A>

Medlem sedan jan. 2001510 inlägg
#7

FSO:n funkar för den har jag använt tidigare.

Och jag läser rätt rad så där är det inga problem. :)

Medlem sedan jan. 2001510 inlägg
#8

Datumet: 2001-04-24

Medlem sedan juni 200032 967 inlägg
#9

hmmm. du gör inget annat med datum dah? finns det mer kod som du kan visa oss?

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
all your base are belong to us!</A>

Medlem sedan jan. 2001510 inlägg
#10

Visst! Koden scannar efter filer i en mapp och om det finns några som stämmer så skriver den ut rubriken i filen som länk.

<%

Session.LCID = 1053

'variabler
Dim objFSO, readFSO, folderPath, objFolder, fileObject, T, Output, Datum

Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
Set readFSO = Server.CreateObject("Scripting.FileSystemObject")

'Skapa sökväg
folderPath = Server.MapPath("/forum/")

'Get folder
Set objFolder = objFSO.GetFolder(folderPath)

If objFolder.Files.Count > 0 Then
		
If objFolder.Files.Count = 1 Then
Response.Write "Klicka på följande länk:<br><br>"
Else
Response.Write "Klicka på någon av följande länkar:<br><br>"
End If

'Loop genom filer
For Each fileObject in objFolder.Files

Set T = readFSO.OpenTextFile(fileObject)

Do Until T.Line = 12
T.SkipLine
Loop

Response.Write T.ReadLine & "<br>"
Datum = T.ReadLine
Response.Write "Går att konvertera till datum: " & IsDate(Datum) & "<br>"
Datum = CDate(T.ReadLine)

Do Until T.Line = 15
T.SkipLine
Loop

Response.Write T.ReadLine
Output = T.ReadLine
		
If Date < Datum Then
Response.Write "<a href=/forum/" & fileObject.Name & " target=information>" & Output & "</a><br><br>"
End If

T.Close

Next

Else

Response.Write "Det finns inga objekt<br><br>"

End If

%>

[Redigerat av Janspeed den 24 apr 2001]

Medlem sedan dec. 1999653 inlägg
#11

testat trimma båda två?
de är jag tvungen å göra om jag ska matcha datum.

If Trim(Date) < Trim(Datum) Then

mvh.

------------------
void[]
stash/$gu&-public(querystring)/n int{}bind "2" "say i own!" :)

Medlem sedan jan. 2001510 inlägg
#12

Nope hjälpte inte.

Det verkar som om det var ett mycket komplexare problem än vad jag trodde?

Medlem sedan juni 200032 967 inlägg
#13

som jag tolkar koden läser du ju in tre rader här:

Response.Write T.ReadLine & "<br>"
Datum = T.ReadLine
Response.Write "Går att konvertera till datum: " & IsDate(Datum) & "<br>"
Datum = CDate(T.ReadLine)

ändra alltså till:

Datum = T.ReadLine
Response.Write Datum & "<br>"
Response.Write "Går att konvertera till datum: " & IsDate(Datum) & "<br>"
Datum = CDate(Datum)

det du kikar isdate() på är alltså raden under datumet, och det du kör cdate på är raden under det. enligt din originalkod alltså. så tolkar jag det i alla fall.

rapportera! ;)

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
all your base are belong to us!</A>

Medlem sedan jan. 2001510 inlägg
#14

I och med att jag höll på att testa så blev det lite många tilldeningar av datumet från filen men nu börjar det likna något.

Jag skrev som du sa @nders och tack vare det så börjar det släppa.

Tydligen så gick det inte att köra CDate direkt på T.ReadLine

Datum = CDate(T.ReadLine)

utan man måste först tilldela RedLine till en variabel.

Datum = T.ReadLine
Datum = CDate(Datum)

Nu borde det väl gå att använda DateDiff i if-satsen? Ger den minusvärden om dagen har passerat?

Medlem sedan juni 200032 967 inlägg
#15

Nu borde det väl gå att använda DateDiff i if-satsen?
jepps...

Ger den minusvärden om dagen har passerat?
testa.... :)

mvh,

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
all your base are belong to us!</A>

Medlem sedan jan. 2001510 inlägg
#16

Helt guld! Det funkade till och med utan DateDiff. Det gick med en enkel Date < Datum. Tackar hemskt mycket för hjälpen! :)

//JANspeed

Medlem sedan juni 200032 967 inlägg
#17

vasse! :)

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
all your base are belong to us!</A>

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