Nedlasting af fil fra database med ASP
Jeg ønsker å laste ned filer (doc, zip, xls, mdb) fra en access-database der filene er lagret som OLE-object.Har prøvd flere løsninger uten å lykkes. Her er koden fra filen når jeg benyttet
AspSmartUpload:
\' Variables
\' *********
Dim myUpload
Dim oConn
Dim strSQL
Dim oRs
RaID=Request.QueryString(\"RaID\")
\' Object creation
\' ***************
Set myUpload = Server.CreateObject(\"aspSmartUpload.SmartUpload\")
\' Connect to the DB
\' *****************
Set oConn = Server.CreateObject(\"ADODB.Connection\")
oConn.Open (\"DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=\" & Server.MapPath(\"\\pluto\\syssam\\database\\database.mdb\"))
\' Open a recordset
\' ****************
strSQL = \"SELECT * FROM Filer WHERE RaID=\" & RaID
Set oRs = Server.CreateObject(\"ADODB.recordset\")
Set oRs.ActiveConnection = oConn
oRs.Source = strSQL
oRs.Open
\' DownloadField
\' *************
myUpload.DownloadField(oRs(\"FIL\"))
myUpload.ContentDisposition = oRs(\"FilNavn\")
\' Destruction
\' ***********
oRs.Close
oConn.Close
Set oRs = Nothing
Set oConn = Nothing
Denne laster ned riktig fil, men filen får ikke navnet sitt (blir fil.asp)
Så tilpasset jeg koden for nedlasting av bilder fra access-databasen:
RaID = Request.QueryString( \"RaID\" )
SQL = \"SELECT * FROM Filer WHERE raID=\" & RaID
Set Conn=Server.CreateObject(\"ADODB.Connection\")
Conn.Open (\"DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=\" & Server.MapPath(\"\\pluto\\syssam\\database\\database.mdb\"))
SET RSFil = Conn.Execute(SQL)
Response.ContentType=RSFil(\"Filtype\")
Response.BinaryWrite RSFil(\"Fil\")
Response.AddHeader \"Content-Disposition\", \"attachment; filename=\" & RSFil(\"Filnavn\")
Conn.Close
set Conn=nothing
Den fungerer lokalt men ikke over internett.
Espen
