24. februar 2002 - 18:31
Der er
15 kommentarer og 1 løsning
Scripting.FileSystemObject / server.mappath problem...
Jeg har følgende script, som opdaterer indholdet i en fil. <% Dim fso, path Set fso = Server.CreateObject("Scripting.FileSystemObject") path = ""&Request.Querystring("path")&Request.Querystring("file")&"" Dim updatefile, filecontent, oldpath oldpath = Request.Querystring("oldpath") filecontent = Request.form("file") 'Response.Write server.mappath(path) Response.Write path 'Set updatefile = fso.CreateTextFile(""&server.mappath(path)&"", True) 'updatefile.WriteLine(""&filecontent&"") 'updatefile.close 'set updatefile = nothing set fso = nothing 'Response.Redirect(""&oldpath&"") %> Mit problem er at jeg får følgende output når jeg skriver Response.Write path : /HSprojekt/default.asp, /HSprojektdefault.asp Og det kan man jo ikke bruge til noget!!! Hvorfor skriver den det? Jeg forstår det ikke!
Annonceindlæg fra Computerworld
24. februar 2002 - 18:32
#1
hvad skal alle dine ""& og &"" gøre godt for !?
24. februar 2002 - 18:34
#2
Dem har jeg brugt flere steder! Er de unødvendige? Det er ikke dem der laver problemet, vel???
24. februar 2002 - 18:36
#3
Det er ikke dem der laver problemet, men de er 100% unødvendige ... Men du skal bruge Server.MapPath() på din path før du kan bruge den i CreateTextFile
24. februar 2002 - 18:38
#4
Det kan jeg jo ikke! Det er det der er problemet indholdet af path : /HSprojekt/default.asp, /HSprojektdefault.asp Den laver på en eller anden måde noget dobbeltkonfekt...
24. februar 2002 - 18:39
#5
Nu hedder den /HSprojekt/, /HSprojektdefault.asp ....
24. februar 2002 - 18:40
#6
path = ""&Request.Querystring("path")&Request.Querystring("file")&"" De indeholder vel det samme "path" og "file" ?!
24. februar 2002 - 18:43
#7
Querystring'en ser således ud: default.asp?mode=update&file=default.asp&path=/HSprojekt/
24. februar 2002 - 18:45
#8
Det er denne der er noget galt med: Request.Querystring("path") Den giver /HSprojekt/, /HSprojekt Request.Querystring("file") giver default.asp
24. februar 2002 - 18:45
#9
Tester lige noget ..
24. februar 2002 - 18:48
#10
Jeg er ked af at sige det, men det er nok noget andet i din kode der gør knuder. Flg. kode kaldt med: pathfile.asp?file=pathfile.asp&path=/HSprojekt/ giver: "/HSprojekt/pathfile.asp" (uden "") ---- kode start ---- <% Dim fso, path, updatefile, filecontent, oldpath Set fso = Server.CreateObject("Scripting.FileSystemObject") strPath = Request.Querystring("path") & Request.Querystring("file") strOldpath = Request.Querystring("oldpath") strFilecontent = Request.Form("file") 'Response.Write Server.MapPath(path) Response.Write strPath 'Set updatefile = fso.CreateTextFile(Server.MapPath(path), True) 'updatefile.WriteLine(strFilecontent) 'updatefile.close 'set updatefile = nothing set fso = nothing 'Response.Redirect(strOldpath) %>
24. februar 2002 - 18:49
#11
Dt var forresten et svar ...
24. februar 2002 - 18:53
#12
Jeg kan godt give dig hele min kode, men jeg vil hellere sende en mail med det... Der er ingen grund til at alle ser det!!!
24. februar 2002 - 18:56
#13
Vil / gider du det ?!!
24. februar 2002 - 19:21
#14
Lige meget jeg har selv fundet fejlen... Det var fordi Qeurystringen "oldpath" jo også indeholdte variablen "path" ....
24. februar 2002 - 19:22
#15
Ret dum fejl, egentlig... Nå men som tak for din hjælp invisibleman, så får du pointne alligevel...
24. februar 2002 - 19:25
#16
*S* Sorry .. jeg har ingen mail fået om at der var nyt i spm. :o( Men tak for point og jeg er glad for jeg kunne hjælpe :o)
Kurser inden for grundlæggende programmering