21. september 2006 - 15:06
Der er
22 kommentarer og 2 løsninger
Formular med mulighed for at downloade..
Jeg har lavet en formular der kan bruges. Men ved ikke hvordan jeg kan få den til at downloade :-/ <form method="post" action="download.asp" class="input"> <select name="mySelect"> <option value="F.eks.pricelist.pdf" style="background-color: #D6D1C4">1<br> <option value="2" style="background-color: #D6D1C4">2<br> <option value="3" style="background-color: #D6D1C4">3<br> <option value="4" style="background-color: #D6D1C4">4<br> <option value="5" style="background-color: #D6D1C4">5<br> <option value="6" style="background-color: #D6D1C4">6<br> <option value="7" style="background-color: #D6D1C4">7<br> <option value="8" style="background-color: #D6D1C4">8<br> <option value="9" style="background-color: #D6D1C4">9<br> </select> <input type="submit" target=_blank name="download" value="Download"> </form></form> Det skal være så simpelt som overhovedet muligt, da jeg ikke er den store haj til det her... :-)
Annonceindlæg fra Infor
21. september 2006 - 17:07
#1
Jeg har sat følgende kode sammen til dig. Du skal nu definere din ASP kode hvilken mappe dine filer ligger i, som der står beskrevet øverst og så i din select (i HTML'en) skal du angive hvad filen hedder i mappen. <% If lCase(Request.ServerVariables("REQUEST_METHOD")) = "post" Then ' Din mappe hvor dine download filer ligger strMappe = "/download/" strFilnavn = Request.Form("download") FilePath = Server.MapPath(strMappe) & "\" & strFilnavn Response.Buffer = True Set st = Server.CreateObject("ADODB.Stream") st.Type = 1 st.Open st.LoadFromFile FilePath Response.Clear Response.ContentType = "image/jpeg" Response.AddHeader "content-disposition", "attachment;filename=" & strFilnavn Response.BinaryWrite st.Read() st.Close Set st = Nothing Response.End Else %> <form method="post" action="download.asp" class="input"> <select name="download"> <option value="" style="background-color: #D6D1C4">Testfil<br> </select> <input type="submit" target="_blank" name="download" value="Download"> </form> <% End if %>
21. september 2006 - 19:40
#2
Tusind tak for det :-) Du får hermed lige nogle points af mig :-)
21. september 2006 - 19:47
#3
Har du testet at det virker, for det har jeg nemlig ikke ;-) Men jeg regner dog meget stærkt med det.
22. september 2006 - 08:54
#4
Jeg kan faktisk ikke få det til at virke? Ved ikke om jeg gør noget forkert? :-(
22. september 2006 - 09:00
#5
Jeg har oprettet en mappe som hedder "Download" og lagt en fil der hedder"test.jpg" ned og så har jeg ændret i select: <select name="download"> <option value="test.jpg" style="background-color: #D6D1C4">Testfil<br> </select> Men det virker ikke :-(
22. september 2006 - 09:36
#6
Hvilken meddelelse modtager du, siden det ikke virker?
22. september 2006 - 09:57
#7
Den går ind på en side der hedder www.mitdomæne/download.asp, som ikke findes, i stedet for at hente filen fra mappen :-/
22. september 2006 - 11:45
#8
<% If lCase(Request.ServerVariables("REQUEST_METHOD")) = "post" Then ' Din mappe hvor dine download filer ligger strMappe = "/download/" strFilnavn = Request.Form("download") FilePath = Server.MapPath(strMappe) & "\" & strFilnavn Response.Buffer = True Set st = Server.CreateObject("ADODB.Stream") st.Type = 1 st.Open st.LoadFromFile FilePath Response.Clear Response.ContentType = "image/jpeg" Response.AddHeader "content-disposition", "attachment;filename=" & strFilnavn Response.BinaryWrite st.Read() st.Close Set st = Nothing Response.End Else %> <form method="post" action="<%=Request.ServerVariables("PATH_INFO")%>" class="input"> <select name="download"> <option value="" style="background-color: #D6D1C4">Testfil<br> </select> <input type="submit" target="_blank" name="download" value="Download"> </form> <% End if %>
22. september 2006 - 11:45
#9
Og husk... <% If lCase(Request.ServerVariables("REQUEST_METHOD")) = "post" Then ' Din mappe hvor dine download filer ligger strMappe = "/download/" strFilnavn = Request.Form("download") FilePath = Server.MapPath(strMappe) & "\" & strFilnavn Response.Buffer = True Set st = Server.CreateObject("ADODB.Stream") st.Type = 1 st.Open st.LoadFromFile FilePath Response.Clear Response.ContentType = "image/jpeg" Response.AddHeader "content-disposition", "attachment;filename=" & strFilnavn Response.BinaryWrite st.Read() st.Close Set st = Nothing Response.End Else %> <form method="post" action="<%=Request.ServerVariables("PATH_INFO")%>" class="input"> <select name="download"> <option value="test.jpg" style="background-color: #D6D1C4">Testfil<br> </select> <input type="submit" target="_blank" name="download" value="Download"> </form> <% End if %>
22. september 2006 - 12:04
#10
Har du ændret noget i det?
22. september 2006 - 12:31
#11
Prøv at gå ind på
www.userfriendly.dk/test.asp Så kan du måske selv bedre se, hvad der kan være galt? :-)
På forhånd mange mange gange tak for din hjælp :-)
22. september 2006 - 13:08
#12
Din server handler jo ikke ASP'en som den skal. Prøv at højreklikke og klikke "Vis kilde" - ASP koden bliver jo vist :-)
22. september 2006 - 13:24
#13
hmm, hehe.... Prøv på denne side...
www.bellcon.dk/test.asp Der bliver koden ikke vist, men det fungerer stadigvæk ikke :-/
22. september 2006 - 13:29
#14
<% If lCase(Request.ServerVariables("REQUEST_METHOD")) = "post" Then ' Din mappe hvor dine download filer ligger strMappe = "/download/" strFilnavn = Request.Form("download") FilePath = Server.MapPath(strMappe & strFilnavn) Response.Buffer = True Set st = Server.CreateObject("ADODB.Stream") st.Type = 1 st.Open st.LoadFromFile FilePath Response.Clear Response.ContentType = "image/jpeg" Response.AddHeader "content-disposition", "attachment;filename=" & strFilnavn Response.BinaryWrite st.Read() st.Close Set st = Nothing Response.End Else %> <form method="post" action="<%=Request.ServerVariables("PATH_INFO")%>" class="input"> <select name="download"> <option value="test.jpg" style="background-color: #D6D1C4">Testfil<br> </select> <input type="submit" target="_blank" name="download" value="Download"> </form> <% End if %> prøv sådan her...
22. september 2006 - 13:48
#15
Stadigvæk ikke, hehe... Det er sgu da mærkelig, er det ikke?
22. september 2006 - 14:15
#16
Nu siger den en anden fejl som måske hjælper os lidt på vej. Dette er bare en test, for at finde ud af hvad den skriver ud som mappe og filnavn. Lad os se ad ;-) <% If lCase(Request.ServerVariables("REQUEST_METHOD")) = "post" Then ' Din mappe hvor dine download filer ligger strMappe = "/download/" strFilnavn = Request.Form("download") FilePath = Server.MapPath(strMappe & strFilnavn) Response.Write(FilePath) Else %> <form method="post" action="<%=Request.ServerVariables("PATH_INFO")%>" class="input"> <select name="download"> <option value="test.jpg" style="background-color: #D6D1C4">Testfil<br> </select> <input type="submit" target="_blank" name="download" value="Download"> </form> <% End if %>
22. september 2006 - 14:25
#17
Så har jeg smidt den nye op :-)
22. september 2006 - 14:32
#18
der er en fejl i server.mappath, så prøv lige at lægge denne her op... <% If lCase(Request.ServerVariables("REQUEST_METHOD")) = "post" Then ' Din mappe hvor dine download filer ligger strMappe = "/download/" strFilnavn = Request.Form("download") response.write strMappe & strFilnavn response.end FilePath = Server.MapPath(strMappe & strFilnavn) Response.Write(FilePath) Else %> <form method="post" action="<%=Request.ServerVariables("PATH_INFO")%>" class="input"> <select name="download"> <option value="test.jpg" style="background-color: #D6D1C4">Testfil<br> </select> <input type="submit" target="_blank" name="download" value="Download"> </form> <% End if %>
22. september 2006 - 14:49
#19
<% If lCase(Request.ServerVariables("REQUEST_METHOD")) = "post" Then ' Din mappe hvor dine download filer ligger strMappe = "\download\" strFilnavn = Request.Form("download") FilePath = Server.MapPath("/") & strMappe & strFilnavn Response.Buffer = True Set st = Server.CreateObject("ADODB.Stream") st.Type = 1 st.Open st.LoadFromFile FilePath Response.Clear Response.ContentType = "image/jpeg" Response.AddHeader "content-disposition", "attachment;filename=" & strFilnavn Response.BinaryWrite st.Read() st.Close Set st = Nothing Response.End Else %> <form method="post" action="<%=Request.ServerVariables("PATH_INFO")%>" class="input"> <select name="download"> <option value="test.jpg" style="background-color: #D6D1C4">Testfil<br> </select> <input type="submit" target="_blank" name="download" value="Download"> </form> <% End if %> hmm... læste lige lidt... prøv lige det her...
22. september 2006 - 20:20
#20
ellebaek, din kode virkede heller ikke, hehe :-)
madeindk: den sidste er vist tæt på. Tag et kig på
www.bellcon.dk/test.asp :-)
22. september 2006 - 21:24
#21
Den burde virke nu. Hvis din mappe ligger helt tilbage i roden og hedder download. <% If lCase(Request.ServerVariables("REQUEST_METHOD")) = "post" Then ' Din mappe hvor dine download filer ligger strMappe = "\download\" strFilnavn = Request.Form("download") FilePath = Server.Mappath("/download") & "\" & strFilnavn Response.Buffer = True Set st = Server.CreateObject("ADODB.Stream") st.Type = 1 st.Open st.LoadFromFile FilePath Response.Clear Response.ContentType = "image/jpeg" Response.AddHeader "content-disposition", "attachment;filename=" & strFilnavn Response.BinaryWrite st.Read() st.Close Set st = Nothing Response.End Else %> <form method="post" action="<%=Request.ServerVariables("PATH_INFO")%>" class="input"> <select name="download"> <option value="test.jpg" style="background-color: #D6D1C4">Testfil<br> </select> <input type="submit" target="_blank" name="download" value="Download"> </form> <% End if %>
22. september 2006 - 21:25
#22
Argh, det er da fordi din submit knap også hedder "download" - doooh!!! Ret til: <input type="submit" target="_blank" name="downloadKnap" value="Download">
23. september 2006 - 07:49
#23
Sådan madeindk!!!! Det virker, hehehehe!!! Tusind tak! :-)
23. september 2006 - 14:24
#24
Det var godt. Her er mit svar ;-)
Kurser inden for grundlæggende programmering