Pernahkah Anda merasa frustrasi ketika Anda membuka situs web dan ada dokumen, gambar, dan konten lain yang tersedia untuk diunduh dan Anda hanya ingin melakukannya, unduh saja! Alih-alih, ketika Anda mengklik pada item konten, itu akan terbuka di browser Anda. Saya menentang masalah ini selama proyek untuk sebuah perusahaan medis dan mereka membutuhkan file PDF mereka untuk diunduh dan tidak dibuka. Ya, ada cara untuk membuatnya membuka kotak dialog Save As.

Untuk tutorial ini, kami akan menganggap file disimpan secara lokal di server dan tidak dalam database. (Itu diskusi yang sangat berbeda)

Pertama, Anda perlu tahu lokasi file Anda. Jadi mari kita asumsikan file Anda berada di //yourserver.com/files/filename.ext. Kami akan menganggap bahwa Server.MapPath adalah "/ file".

Jadi, pada titik ini, mari kita buat file ASP yang akan mengontrol pengunduhan file. Mulailah dengan membuat dokumen baru, kosong, menggunakan NotePad atau editor HTML favorit Anda. Tempatkan kode ASP berikut:

<%
'=======================
'Define the names of your functions
'=======================
Dim Stream
Dim Contents
Dim FileName
Dim FileExt
Const adTypeBinary = 1
'=======================
'Get the actual file name from the URL that is passed to the browser
'=======================
FileName = request.querystring("filename") 'Get the name from the URL
'=======================
'GIVE AN ERROR MESSAGE IF THE URL IS EMPTY
'=======================
if FileName = "" Then
response.write "Filename Not specified."
response.end
end if
'=======================
'prevent access to certain files
'=======================
FileExt = Mid(FileName, InStrRev(FileName, ".") + 1)
select case UCase(FileExt)
Case "ASP", "ASA", "ASPX", "ASAX", "MDB"
response.write "You cannot access these file types."
response.end
end select
'=======================
'Start the download process if all is good
'=======================
response.clear
response.contentType = "application/octet-stream"
response.addheader "content-disposition", "attachment; filename=" & FileName
set stream = server.CreateObject("ADODB.Stream")
stream.type = adTypeBinary
stream.open
stream.LoadFromFile Server.MapPath("/files") & FileName
while not stream.EOS
response.BinaryWrite Stream.Read(1024 * 64)
wend
stream.Close
Set stream = Nothing
response.Flush
response.End
%>


Itu untuk yang itu. Sekarang, simpan dan unggah file ini ke server Anda dan beri nama itu diajukanownloader.asp

Sekarang katakanlah nama file di server Anda adalah familytree.pdf

Maka Anda cukup meneruskan URL berikut di browser Anda dan dialog File Save as Open akan muncul.

//yourserver.com/filedownloader.asp?filename=familytree.pdf

Hanya itu saja! Anda akan melihat ini:



Selamat mencoba dan Anda dapat meningkatkan ini dengan menggunakan basis data dan fungsi keren lainnya untuk memastikan bahwa file yang ingin diakses pengguna Anda diberi kemampuan untuk diunduh dan tidak dibuka di peramban web mereka saat ini yang memungkinkan mereka untuk "tetap" di situs web Anda .

Petunjuk Video: 20120724 Kim hyunjoong Haneda Arrival (April 2024).