Avatar billede want2learn Nybegynder
08. april 2006 - 17:23 Der er 3 kommentarer

underlig Type mismatch: string: fejl

Jeg har denne kode:
<%
Dim objFSO
Dim objStream
Dim intLine
Dim thedate

Const ForReading = 1
Const ForWriting = 2

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

Set objStream=objFSO.OpenTextFile(Server.MapPath("update.txt"), ForReading)
thedate = Trim(Replace(intLine, "RunDate = ", ""))
thisdate = DateDiff("d", thedate, Date)
if thisdate = 0 then
  response.redirect("www.eksperten.dk")
else
  Response.Write("test")
end if
objStream.Close

Set objStream=Nothing
Set objFSO=Nothing
%>

og der laver den en "Type mismatch" fejl på den linje men
thisdate = DateDiff("d", thedate, Date)
Hvorfor !?
Avatar billede softspot Forsker
08. april 2006 - 17:40 #1
Hvad er indholdet af variablen thedate?
Avatar billede medions Nybegynder
08. april 2006 - 17:52 #2
<%
Dim objFSO
Dim objStream
Dim intLine
Dim thedate

Const ForReading = 1
Const ForWriting = 2

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

Set objStream=objFSO.OpenTextFile(Server.MapPath("update.txt"), ForReading)
thedate = Trim(Replace(intLine, "RunDate = ", ""))
thisdate = DateDiff("d", CDate(thedate), Date)
if thisdate = 0 then
  response.redirect("www.eksperten.dk")
else
  Response.Write("test")
end if
objStream.Close

Set objStream=Nothing
Set objFSO=Nothing
%>

Prøv sådan...

//>Rune
Avatar billede softspot Forsker
08. april 2006 - 20:07 #3
Det vile givetvis ikke fungere, hvis thedate ikke indeholder en valid dato (hvilket noget kunne tyde på), men det skal jo ikke afholde dig fra at prøve...

Jeg ville mene at du skulle lave et check på om thedate rent faktisk indeholder en dato inden du bruger den og hvis ikke den gør det, så melde en fejl.

<%
Dim objFSO
Dim objStream
Dim intLine
Dim thedate

Const ForReading = 1
Const ForWriting = 2

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

Set objStream=objFSO.OpenTextFile(Server.MapPath("update.txt"), ForReading)
thedate = Trim(Replace(intLine, "RunDate = ", ""))
if isdate(thedate) then
  thisdate = DateDiff("d", thedate, Date)
  if thisdate = 0 then
    response.redirect("www.eksperten.dk")
  else
    Response.Write("test")
  end if
else
  Response.Write("RunDate er ikke en gyldig dato. Check om den er specificeret korrekt")
end if
objStream.Close

Set objStream=Nothing
Set objFSO=Nothing
%>
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester