Έχετε ποτέ απογοητευτεί όταν φτάσετε σε έναν ιστότοπο και υπάρχουν έγγραφα, εικόνες και άλλο περιεχόμενο που μπορείτε να κατεβάσετε και θέλετε να κάνετε ακριβώς αυτό, να το κατεβάσετε! Αντίθετα, όταν κάνετε κλικ σε ένα στοιχείο περιεχομένου, συνεχίζει να ανοίγει στο πρόγραμμα περιήγησης. Ήμουν αντιμέτωπος με αυτό το ζήτημα κατά τη διάρκεια ενός σχεδίου για μια ιατρική εταιρεία και χρειαζόταν τα αρχεία PDF να τα κατεβάσουν και να μην ανοίξουν. Λοιπόν, υπάρχει ένας τρόπος για να το ανοίξετε το παράθυρο διαλόγου Αποθήκευση ως.

Για αυτό το σεμινάριο, θα υποθέσουμε ότι τα αρχεία αποθηκεύονται τοπικά στον διακομιστή και όχι σε μια βάση δεδομένων. (Αυτή είναι μια εντελώς διαφορετική συζήτηση)

Πρώτον, πρέπει να γνωρίζετε τη θέση των αρχείων σας. Ας υποθέσουμε ότι τα αρχεία σας βρίσκονται στη διεύθυνση //yourserver.com/files/filename.ext. Θα υποθέσουμε ότι το Server.MapPath είναι "/ files".

Έτσι, σε αυτό το σημείο, ας δημιουργήσουμε το αρχείο ASP που θα ελέγχει τη λήψη του αρχείου. Ξεκινήστε δημιουργώντας ένα νέο κενό έγγραφο χρησιμοποιώντας το NotePad ή τον αγαπημένο σας επεξεργαστή HTML. Τοποθετήστε τον ακόλουθο κώδικα ASP:

<%
'=======================
'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
%>


Αυτό είναι για αυτό. Τώρα, αποθηκεύστε και ανεβάστε αυτό το αρχείο στον server σας και ονομάστε το filedownloader.asp

Τώρα ας υποθέσουμε ότι το όνομα αρχείου στο διακομιστή σας είναι familytree.pdf

Στη συνέχεια θα περάσετε απλά την ακόλουθη διεύθυνση URL στο πρόγραμμα περιήγησής σας και θα εμφανιστεί το παράθυρο διαλόγου File Save as Open.

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

Αυτό είναι! Θα πρέπει να δείτε αυτό:



Καλή τύχη και μπορείτε να ενισχύσετε αυτό χρησιμοποιώντας τις βάσεις δεδομένων και άλλες δροσερές λειτουργίες για να βεβαιωθείτε ότι τα αρχεία που θέλετε να έχουν πρόσβαση οι χρήστες σας δίνεται η δυνατότητα να κατεβάζονται και να μην ανοίγουν στο τρέχον web browser τους, επιτρέποντάς τους να "μείνουν" στην ιστοσελίδα σας .

Οδηγίες Βίντεο: Κρεατίνη - ΜΕΓΙΣΤΑ ΑΠΟΤΕΛΕΣΜΑΤΑ Με Ένα Απλό Τρικ (Και Χωρίς Φουσκώματα) (Απρίλιος 2024).