På min sajt kan man aldda upp filer och dokument med asp101:s pure-asp-uploadskript. Hur "skickar" du filerna till användarna? En fråga bara:Doctype
I explorer fungerar det bra eftersom den använder sig av "doctypesniffing". Däremot vägrar mozillaläsare(vilka jag primärt gjrot sidan för) att ladda ner filerna då de skickas av min server som "text/plain"...
Vad gör jag åt det? Bilderna jag laddar upp fungerar bra.... Kan jag sätta doctype med asp på ngt sätt?Sv: Doctype
Jag har tidigare gjort en lösning:
getfile.asp:
<code><%
' Ange sökvägen till mappen där filerna finns
myFolder="./files/"
download=Request.QueryString("download")
strFileName=Server.MapPath(myFolder&download)
'Kolla storleken på filen
SET objFSO = Server.CreateObject("Scripting.FileSystemObject")
SET objFile = objFSO.GetFile(strFileName)
intFileSize = objFile.Size
SET objFSO = nothing
SET objFile = nothing
' Kolla filändelsen för att sätta content-type
arrTmp = split(strFileName,".")
strFileExt = arrTmp(ubound(arrTmp))
SELECT Case lcase(strFileExt)
Case "asf"
strContentType = "video/x-ms-asf"
Case "asp"
strContentType = "text/asp"
Case "avi"
strContentType = "video/avi"
Case "bmp"
strContentType = "image/bmp"
Case "doc", "dot"
strContentType = "application/msword"
Case "gif"
strContentType = "image/gif"
Case "htm", "html"
strContentType = "text/html"
Case "jpg", "jpeg"
strContentType = "image/jpeg"
Case "mdb", "mde", "mda"
strContentType = "application/x-msaccess"
Case "mp3"
strContentType = "audio/mpeg3"
Case "mov"
strContentType = "video/quicktime"
Case "mpg", "mpeg"
strContentType = "video/mpeg"
Case "pdf"
strContentType = "application/pdf"
Case "ppt", "pps"
strContentType = "application/vnd.ms-powerpoint"
Case "png"
strContentType = "image/png"
Case "qt", "qtm"
strContentType = "video/quicktime"
Case "ra", "ram"
strContentType = "audio/vnd.rn-realaudio"
Case "rm"
strContentType = "video/vnd.rn-realvideo"
Case "rtf"
strContentType = "application/msword"
Case "tif", "tiff"
strContentType = "image/tiff"
Case "txt"
strContentType = "text/plain"
Case "vsd"
strContentType = "application/vnd.visio"
Case "wav"
strContentType = "audio/x-wav"
Case "xls", "xlt", "xla", "skv", "csv", "prn"
strContentType = "application/vnd.ms-excel"
Case "zip"
strContentType = "application/x-zip-compressed"
Case Else
strContentType = "application/octet-stream"
END SELECT
Response.ContentType = strContentType
Response.AddHeader "Content-Disposition", "attachment;filename="&download
Response.AddHeader "Content-Length", intFileSize
Const adTypeBinary = 1
SET objStream = Server.CreateObject("ADODB.Stream")
objStream.Open
objStream.Type = adTypeBinary
objStream.LoadFromFile strFileName
Response.BinaryWrite objStream.Read
objStream.Close
SET objStream = Nothing
%></code>
Som anropas från valfri sida tex såhär:
<code>myletter.doc</code>
eller
<code><% Response.Redirect("getfile.asp?download=myletter.doc") %></code>
Kan det vara något?
/ClusterSv: Doctype
JAg skulle gärna vilja "döpa" filerna som laddas ner.
nu heter de 1.gif, 4.doc, 67.mp3 osv
Id databasen finns ett fält [namn] som innehåller originalfilnamnet. Är det möjligt att skicka filen till nedlanddning under det namnet?