Que devez-vous faire si vous souhaitez mettre les images ou les fichiers de votre machine sur le serveur ? Il existe trois options : 1. Téléchargement FTP, 2. Utiliser une clé USB pour copier sur le serveur, 3. Si le serveur prend en charge le Fonction de téléchargement ASP, utilisez la page Web. Le navigateur télécharge le fichier sur le serveur.
Aujourd'hui, nous expliquons comment utiliser la fonction de téléchargement d'asp pour télécharger des fichiers locaux sur le serveur.
Le système le plus simple comprend les trois fichiers suivants :
upload.htm --Télécharger le fichier de port, sélectionnez le fichier local uploadimg.asp --Télécharger le fichier de contrôle du programme upload_5xsoft.inc --Aucune classe de téléchargement de composants, les débutants n'ont pas besoin d'apprendre ce fichier, tant qu'ils peuvent l'utiliser
contenu upload.htm - télécharger le fichier de port, sélectionner le fichier local
- <html>
- <tête>
- </tête>
- <corps>
- <tablewidth=80%border=0align=center>
- <formname=form1method=postaction=uploadimg.aspenctype=multipart/form-data>
- <tr>
- <tdalign=center><inputname=upfiletype=fileid=upfile></td>
- </tr>
- <tr>
- <tdalign=center><inputtype=submitname=Submitvalue=Télécharger des images></td>
- </tr>
- </form>
- </table>
- </corps>
- </html>
uploadimg.asp content - télécharger le fichier de contrôle du programme
- <!--#includeFILE=upload_5xsoft.inc-->
- <%
- dimupload,fichier,chemin du fichier
- chemin du fichier = TÉLÉCHARGER/
- setupload=newupload_5xSoft''Créer un objet de téléchargement
- foreachformNameinupload.file'' répertorie tous les fichiers téléchargés
- setfile=upload.file(formName)'' génère un objet fichier
- iffile.FileSize>0then''Si FileSize>0, cela signifie qu'il y a des données de fichier
- fname = fichier.nom de fichier
- file.SaveAsServer.mappath(filepath&fname)''Enregistrer le fichier
- fin
- setfile = rien
- suivant
- setupload=rien''Supprimer cet objet
contenu upload_5xsoft.inc
--Le contenu de ce fichier n'appartient pas au contenu de cet exercice. Cet exercice applique cette méthode.
- <SCRIPTRUNAT=SERVERLANGUAGE=VBSCRIPT>
- dimoUpFileStream
- Classeupload_5xSoft
- dimForm, Fichier, Version
- PrivateSubClass_Initialize
- dimRequestBinDate, sStart, bCrLf, sInfo, iInfoStart, iInfoEnd, tStream, iStart, oFileInfo
- dimiFileSize, sFilePath, sFileType, sFormvalue, sFileName
- dimiFindStart,iFindEnd
- dimiFormStart,iFormEnd,sFormName
- Version=Aucune classe de téléchargement de composant Version0.93
- setForm=Serveur.CreateObject(Scripting.Dictionary)
- setFile=Serveur.CreateObject(Scripting.Dictionary)
- ifRequest.TotalBytes<1thenExitSub
- settStream=Serveur.CreateObject(adodb.stream)
- setoUpFileStream=Server.CreateObject(adodb.stream)
- oUpFileStream.Type=1
- oUpFileStream.Mode=3
- oUpFileStream.Open
- oUpFileStream.WriteRequest.BinaryRead(Request.TotalBytes)
- Response.Write<fontsize=2>Durée d'exécution de la page : &FormatNumber((Timer()-time1)*1000,3)&millisecondes</font><br>
- oUpFileStream.Position=0
- RequestBinDate=oUpFileStream.Read
- iFormDébut=1
- iFormEnd=LenB(RequestBinDate)
- bCrLf=chrB(13)&chrB(10)
- sStart=MidB(RequestBinDate,1,InStrB(iFormStart,RequestBinDate,bCrLf)-1)
- iDébut=LenB(sDébut)
- iFormDébut=iFormDébut+iDébut+1
- while(iFormStart+10)<iFormEnd
- iInfoEnd=InStrB(iFormStart,RequestBinDate,bCrLf&bCrLf)+3
- tStream.Type=1
- tStream.Mode=3
- tStream.Open
- oUpFileStream.Position=iFormStart
- oUpFileStream.CopyTotStream,iInfoEnd-iFormStart
- tStream.Position=0
- tStream.Type=2
- tStream.Charset=gb2312
- sInfo=tStream.ReadText
- 'Obtenir le nom de l'élément du formulaire
- iFormStart=InStrB(iInfoEnd,RequestBinDate,sStart)
- iFindStart=InStr(22,sInfo,nom=,1)+6
- iFindEnd=InStr(iFindStart,sInfo,,1)
- sFormName=Mid(sinfo,iFindStart,iFindEnd-iFindStart)
- 'Si c'est un fichier
- ifInStr(45,sInfo,filename=,1)>0then
- setoFileInfo=nouveauFileInfo
- 'Obtenir le nom du fichier
- iFindStart=InStr(iFindEnd,sInfo,filename=,1)+10
- iFindEnd=InStr(iFindStart,sInfo,,1)
- sFileName=Mid(sinfo,iFindStart,iFindEnd-iFindStart)
- oFileInfo.FileName=getFileName(sFileName)
- oFileInfo.FilePath=getFilePath(sFileName)
- 'Obtenir le type de fichier
- iFindStart=InStr(iFindEnd,sInfo,Content-Type:,1)+14
- iFindEnd=InStr(iFindStart,sInfo,vbCr)
- oFileInfo.FileType=Mid(sinfo,iFindStart,iFindEnd-iFindStart)
- oFileInfo.FileStart=iInfoFin
- oFileInfo.FileSize=iFormStart-iInfoEnd-3
- oFileInfo.FormName=sFormName
- fichier.addsFormName,oFileInfo
- autre
- 'S'il s'agit d'un élément de formulaire
- tStream.Fermer
- tStream.Type=1
- tStream.Mode=3
- tStream.Open
- oUpFileStream.Position=iInfoEnd
- oUpFileStream.CopyTotStream,iFormStart-iInfoEnd-3
- tStream.Position=0
- tStream.Type=2
- tStream.Charset=gb2312
- sFormvalue=tStream.ReadText
- form.AddsFormName,sFormvalue
- fin
- tStream.Fermer
- iFormDébut=iFormDébut+iDébut+1
- wend
- RequêteBinDate=
- setStream = rien
- FinSub
- PrivateSubClass_Terminate
- ifnotRequest.TotalBytes<1then
- formulaire.RemoveAll
- fichier.RemoveAll
- setform = rien
- setfile = rien
- oUpFileStream.Fermer
- setoUpFileStream = rien
- fin
- FinSub
- Fonction privéeGetFilePath(FullPath)
- SiCheminComplet<>Alors
- GetFilePath=gauche(FullPath,InStrRev(FullPath,))
- Autre
- GetFilePath=
- FinSi
- Fin de fonction
- Fonction privéeGetFileName (FullPath)
- SiCheminComplet<>Alors
- GetFileName=mid(FullPath,InStrRev(FullPath,)+1)
- Autre
- GetFileName=
- FinSi
- Fin de fonction
- Classe de fin
- ClassFileInfo
- dimFormName, FileName, FilePath, FileSize, FileType, FileStart
- PrivateSubClass_Initialize
- Nom du fichier =
- Chemin de fichier =
- Taille du fichier = 0
- Départ Fichier=0
- NomFormulaire=
- Type de fichier =
- FinSub
- Fonction publiqueEnregistrerAs (FullPath)
- dimoFileStream, ErrorChar, je
- Enregistrer sous = 1
- iftrim(fullpath)=orright(fullpath,1)=/thenexitfunction
- setoFileStream=CreateObject(Adodb.Stream)
- oFileStream.Type=1
- oFileStream.Mode=3
- oFileStream.Open
- oUpFileStream.position=FileStart
- oUpFileStream.copytooFileStream,FileSize
- oFileStream.SaveToFileFullPath,2
- oFileStream.Fermer
- setoFileStream = rien
- Enregistrer sous = 0
- fonction finale
- Classe de fin
- </SCRIPT>
Ce que cet article décrit est le programme le plus simple pour télécharger des fichiers. Amis, veuillez l'analyser vous-même. Après avoir appris cet exercice, vous maîtriserez essentiellement la fonction de téléchargement générale d'ASP.