Avatar billede want2learn Nybegynder
06. april 2006 - 15:56 Der er 6 kommentarer

Type mismatch: 'thedate'

Jeg får en fejl på linje 22 som er:
if datediff("d",thedate,Date) <> 0 then

Fejlen er:
Microsoft VBScript runtime error '800a000d'

Type mismatch: 'thedate'

/LM/w3svc/8837/ROOT/global.asa, line 22


min kode:
<script language="VBScript" Runat="server">
sub application_onstart
Dim objFSO
Dim objStream
Dim intLine
Dim thedate

Const ForReading = 1
Const ForWriting = 2

Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
If objFSO.FileExists(Server.MapPath("update.txt")) Then
    Set objStream = objFSO.OpenTextFile(Server.MapPath("update.txt"), ForReading)
    intLine = objStream.ReadLine
    objStream.Close
    Set objStream = Nothing
Else
    'Gør ikke noget
End If

thedate = trim(replace(intLine,"RunDate =",""))
if datediff("d",thedate,Date) <> 0 then
  'Gør ikke noget
else
  response.redirect("test.asp")
end if
Set objFSO = Nothing
end sub
</script>
Avatar billede fennec Nybegynder
06. april 2006 - 16:01 #1
Kunne være fordi thedate ikke indeholder en valid dato (evt tom). Prøv at udskrive den til skærmen og se hvad der står i den..
Avatar billede want2learn Nybegynder
06. april 2006 - 16:34 #2
hvis jeg bruge dette:
<%
Set fs=Server.CreateObject("Scripting.FileSystemObject")

Set f=fs.OpenTextFile(Server.MapPath("update.txt"), 1)
Response.Write(trim(replace(f.ReadAll,"RunDate =","")))
f.Close

Set f=Nothing
Set fs=Nothing
%>

så får jeg dette :  06-04-2006

bruger jeg dette
<%
Set fs=Server.CreateObject("Scripting.FileSystemObject")

Set f=fs.OpenTextFile(Server.MapPath("update.txt"), 1)
Response.Write(f.ReadAll)
f.Close

Set f=Nothing
Set fs=Nothing
%>

så får jeg dette :  RunDate = 06-04-2006

så der er noget i den.
Avatar billede want2learn Nybegynder
06. april 2006 - 16:35 #3
de 2 script er lagt ind på en alm. side som ikke er ASA men asp. men skal have scriptet til at køre på en asa side.
Avatar billede fennec Nybegynder
07. april 2006 - 08:48 #4
Prøv at typecaste datoen:
thedate = trim(replace(intLine,"RunDate =",""))
thedate = cDate(thedate)
if datediff("d",thedate,Date) <> 0 then
Avatar billede want2learn Nybegynder
08. april 2006 - 13:14 #5
kigger lige på det senere
Avatar billede want2learn Nybegynder
08. april 2006 - 16:56 #6
så får jeg denne fejl

Microsoft VBScript runtime error '800a000d'

Type mismatch: 'cDate'

/LM/w3svc/8837/ROOT/global.asa, line 22


linje 22 = thedate = cDate(thedate)
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