Avatar billede jenslyn_s Nybegynder
13. juni 2007 - 19:50 Der er 1 kommentar og
1 løsning

Error ved file write() grundet underlige tegn

Hvordan undgår jeg at få:

Microsoft VBScript runtime  error '800a0005'

Invalid procedure call or argument

ved:

dim fs, fname
set fs = Server.CreateObject("Scripting.FileSystemObject")
set fname=fs.CreateTextFile(Server.MapPath("diverse/" & request.QueryString("section")&".html"),true,false)
fname.Write(cont)

Kan jeg ikke encode det som jeg skal skrive, så det glider igennem?

Helt blank efter at have googlet :-/
Avatar billede jenslyn_s Nybegynder
13. juni 2007 - 20:45 #1
Løste det ved først at HTMLEncode hele kode-strengen, for dernæst at decode den, så alle tags blev decodede:

Function HTMLDecode(sText)
    Dim I
    sText = Replace(sText, """, Chr(34))
    sText = Replace(sText, "<"  , Chr(60))
    sText = Replace(sText, ">"  , Chr(62))
    sText = Replace(sText, "&" , Chr(38))
    sText = Replace(sText, " ", Chr(32))
    For I = 1 to 255
        sText = Replace(sText, "&#" & I & ";", Chr(I))
    Next
    HTMLDecode = sText
End Function

' Skriver så:
fname.Write(HTMLDecode(Server.HTMLEncode(cont)))
Avatar billede jenslyn_s Nybegynder
13. juni 2007 - 20:45 #2
Kom gerne med bedre og mere korrekte løsninger :)
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