webForumDet fria alternativet

Spara genererad fil på servern?

ASP

2 svar · 236 visningar · startad av CokeLight

Medlem sedan juni 2000504 inlägg
Frågan#1

Hejsan,

Jag hittade en intressant kodsnutt som Emission hade postat för ett tag sen:

response.AddHeader "content-disposition", "attachment; filename=test.xls"

... här så skapas en Excelfil, och användaren får sen automatiskt välja var filen ska sparas, (den kommer att hamna lokalt någonstans på användarens burk).

Fråga: Men hur skulle jag göra för att (samtidigt) lägga en kopia av filen på servern så att jag kan bearbeta den t.ex?

Om min fråga var oklar så förklarar jag gärna igen :) (Tycker att det är kanon att det här forumet finns! :-)

------------------
"Between stimulus and response is a pause wherein our ability to choose lies".

Medlem sedan dec. 19996 721 inlägg
#2

Jag förstår vad du vill, men det är inte busenkelt. Det man gör med

response.AddHeader "content-disposition", "attachment; filename=test.xls"

är att man säger åt webbläsaren att inte visa den renderade sidan, utan i stället poppa upp en spara-dialog. Själva ASP-skriptet och webbservern är överhuvud taget inte inblandade i operationen, och man får en hel massa gratis...

För att skriva något till en textfil ska du använda FileSystemObject, och dess metoder.

Dim objFSO,objStream,strFileName

strFileName="test.xls"

set objFSO=server.createobject("Scripting.FileSystemObject")

set objStream=objFSO.CreateTextFile(Server.Mappath(strFileName),true)

function BothWrite(strWrite)
   response.write strWrite
   objStream.Write strWrite
end function

'ersätt alla response.write med BothWrite

BothWrite "hej hopp"

objStream.Close
set objStream=Nothing
set objFSO=Nothing
Medlem sedan juni 2000504 inlägg
#3

Jaha.. Kanon, tack så mycket Emission.. ! :) Det fungerade utmärkt.. Hade ingen aning om att man kunde skapa Excel dokument på det där sättet tillsammans med FSO..

(När jag satt o provade förut så verkade det dessutom som om det inte gick att använda request.querystring eller javascript submit kod i den sidan som innehöll "response.AddHeader "content-disposition", "attachment;..." Vet inte om det stämmer.. )

Hmm, iaf, stort tack igen ! :)

------------------
"Between stimulus and response is a pause wherein our ability to choose lies".

270 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
128 ms — deklarationer (db)
0 ms — hämta statistik (cache)
139 ms — hämta tråd, inlägg och bilagor (db)
122 ms — ändringar (db)