Avatar billede larsen1 Nybegynder
23. april 2002 - 17:14 Der er 25 kommentarer og
1 løsning

Download script - åndsvagt problem

Jeg fandt dette udemærkede script her på eksperten, men har et lille problem med at få det til at virke. Den virker som den står herunder, men hvis filen ligger i en mappe, så kan jeg simpelthen ikke få den til at makke ret.
Jeg har prøvet med picname = "mappe/1508.jpg" - men no luck. Er der nogen der kan hjælpe?

<%
Const adTypeBinary = 1

Response.Expires = 0
Response.Buffer = TRUE

picname = "1508.jpg"
Set uAgent = Request.ServerVariables("HTTP_USER_AGENT")
if (inStr(uAgent, "IE")) Then
      ' Explorer
      Response.ContentType = "m_type"
      Response.AddHeader "Content-Disposition", "atachment; filename="& picName
Else
      ' NetScape
      Response.ContentType = "application/octet-stream"
      Response.AddHeader "Content-Disposition", "attachment; filename="& chr(34) & picName & chr(34)
End if

Dim objStream
Set objStream = Server.CreateObject("ADODB.Stream")

objStream.Type = adTypeBinary
objStream.Open
objStream.LoadFromFile server.mappath(picName)
Response.BinaryWrite objStream.Read

objStream.Close
Set objStream = Nothing

Response.Flush
%>

/simon
Avatar billede guddo Nybegynder
23. april 2002 - 17:16 #1
Det virker udemærket her :)

Bad for dig!  :(
Sorry m8!
Avatar billede -mundi- Nybegynder
23. april 2002 - 17:19 #2
Det kommer jo lidt an på din mappe struktur, hvor ligger billedet i forhold til sciptet ?
Avatar billede larsen1 Nybegynder
23. april 2002 - 17:23 #3
Scriptet ligger her:
test/download.asp

og jeg skal have det til at virke med:
test/mappe/1508.jpg
Avatar billede tsunami Nybegynder
23. april 2002 - 17:27 #4
Hvad fejl får du?
Avatar billede larsen1 Nybegynder
23. april 2002 - 17:35 #5
Den downloader bare en tom fil, som hedder download. Det er det samme den gør, hvis filen ikke findes.
Avatar billede -mundi- Nybegynder
23. april 2002 - 17:36 #6
hvad får du hvis du skriver server.mappath("mappe/1508.jpg") ud ?
Avatar billede tsunami Nybegynder
23. april 2002 - 17:55 #7
Prøv med

<%
Const adTypeBinary = 1

Response.Expires = 0
Response.Buffer = TRUE

picname = "mappe/1508.jpg"
Set uAgent = Request.ServerVariables("HTTP_USER_AGENT")
if (inStr(uAgent, "IE")) Then
      ' Explorer
      Response.ContentType = "m_type"
      Response.AddHeader "Content-Disposition", "atachment; filename='"& picName & "'"
Else
      ' NetScape
      Response.ContentType = "application/octet-stream"
      Response.AddHeader "Content-Disposition", "attachment; filename='" & picName & "'"
End if

Dim objStream
Set objStream = Server.CreateObject("ADODB.Stream")

objStream.Type = adTypeBinary
objStream.Open
objStream.LoadFromFile server.mappath(picName)
Response.BinaryWrite(objStream.Read)

objStream.Close
Set objStream = Nothing

Response.Flush
%>
Avatar billede larsen1 Nybegynder
23. april 2002 - 18:23 #8
Mundi -> d:\web\fissefissefezfez.dk\test\mappe\1508.jpg

tsunami -> Det gør ingen forskel. Den sætter anførselstegn om filnavnet, når den ikke ligger i en mappe, men ellers er det det samme - den vil ikke når billedet ligger i en mappe.
Avatar billede tsunami Nybegynder
23. april 2002 - 18:31 #9
Jeg ved det... det var også kun () som jeg tilrettede i Response.BinaryWrite som jeg håbede der var galt... :o)
Avatar billede -mundi- Nybegynder
23. april 2002 - 18:32 #10
og billedet ligger der ?

paste lige stien ind i en browser og vær 100% siker på sat den ligger der
Avatar billede tsunami Nybegynder
23. april 2002 - 18:34 #11
-mundi- -> hehe... jeg tænkte det samme
Avatar billede -mundi- Nybegynder
23. april 2002 - 18:34 #12
kan det være fordi du har en stavefejl i attachment ?:

Response.AddHeader "Content-Disposition", "atachment; filename='"& picName & "'"

skulle da være

Response.AddHeader "Content-Disposition", "attachment; filename='"& picName & "'"
Avatar billede larsen1 Nybegynder
23. april 2002 - 18:35 #13
Jeg vil slet ikke udelukke den slags dumme fejl....Alt er muligt...

http://www.fissefissefezfez.dk/test/download.asp

http://www.fissefissefezfez.dk/test/mappe/1508.jpg
Avatar billede larsen1 Nybegynder
23. april 2002 - 18:38 #14
Næææh - det ændrer ikke rigtigt noget at stave attachment rigtigt...
Avatar billede -mundi- Nybegynder
23. april 2002 - 18:38 #15
jeg får fint billedet ned, men det hedder bare download uden nogen filtype når det er jeg bruger download scriptet
Avatar billede larsen1 Nybegynder
23. april 2002 - 18:43 #16
Du har ret - det er søreme billedet der kommer ned. Så er problemet bare hvorfor den ikke kan foreslå det rigtige filnavn. Det kan den jo når jeg peger på billedet i samme mappe som scriptet.

Som her:
http://www.fissefissefezfez.dk/test/download_samme.asp
Avatar billede -mundi- Nybegynder
23. april 2002 - 18:44 #17
har det nu, det tager lige 2 sekunder
Avatar billede larsen1 Nybegynder
23. april 2002 - 18:45 #18
det lyder godt...
Avatar billede -mundi- Nybegynder
23. april 2002 - 18:47 #19
<%
Const adTypeBinary = 1

Response.Expires = 0
Response.Buffer = TRUE

picname = "mappe/1508.jpg" ' det billede der skal downloades fra serveren
saveAsPicname="mundisFavoriteChair.jpg"

Set uAgent = Request.ServerVariables("HTTP_USER_AGENT")
if (inStr(uAgent, "IE")) Then
      ' Explorer
      Response.ContentType = "m_type"
      Response.AddHeader "Content-Disposition", "atachment; filename="& saveAsPicname
Else
      ' NetScape
      Response.ContentType = "application/octet-stream"
      Response.AddHeader "Content-Disposition", "attachment; filename="& chr(34) & picName & chr(34)
End if

Dim objStream
Set objStream = Server.CreateObject("ADODB.Stream")

objStream.Type = adTypeBinary
objStream.Open
objStream.LoadFromFile server.mappath(picName)
Response.BinaryWrite objStream.Read

objStream.Close
Set objStream = Nothing

Response.Flush
%>

Prøv den engang
Avatar billede -mundi- Nybegynder
23. april 2002 - 18:48 #20
hrm og så stav lige attachment rigtigt :-) Jeg glemte at rette det
Avatar billede larsen1 Nybegynder
23. april 2002 - 18:48 #21
Det virkede perfekt.... Du er intet mindre end et geni!
Avatar billede larsen1 Nybegynder
23. april 2002 - 18:49 #22
Avatar billede larsen1 Nybegynder
23. april 2002 - 18:49 #23
Avatar billede larsen1 Nybegynder
23. april 2002 - 18:50 #24
Super duper - nu er jeg glad!
Avatar billede -mundi- Nybegynder
23. april 2002 - 18:54 #25
Det er faktisk ret simpelt :-)

Du brugte picname til 2 ting:
1. Til at bestemme hvilken fil der skulle downloades
2. Til at bestemme hvad filen skulle hedde

Hvis den fil der skal downes hedder 1508.jpg er det ikke noget problem med 1 og 2

men hvis filen pludselig hedder mappe/1508.jpg så bliver der hentet filen mappe/1508.jpg ind, det er ok..

Men når du bruger den samme variabel til at angive filnavn, beder du brugeren om at gemme den som mappe/1508.jpg hvilket er et ugyldigt filnavn fordi der er / i det... og så går der ged i det hele
Avatar billede larsen1 Nybegynder
23. april 2002 - 19:09 #26
ahhhhh.... clever! Det kan jeg godt se logikken i!
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