Upload de fichiers

On utilise un formulaire  pour permettre aux  visiteurs de sélectionner un fichier  à uploader.
Voici les codes qu’il faudra rédiger :

Tout  d’abord commençons par le formulaire

<FORM METHOD="POST"
      ENCTYPE="multipart/form-data">
   <INPUT TYPE=FILE NAME="userfile"><BR>
   <INPUT TYPE=SUBMIT
      value="Enregistrer le fichier">
</FORM>

Pour écrire le code ASP il faut au préalable s’assurer que le composant AspSmartUpLoad est installé sur le serveur
<% Set mySmartUpload = _
Server.CreateObject("aspSmartUpload.SmartUpload")%>
On indique au composant la taille maxi acceptée pour les fichiers (en octets)
<%mySmartUpload.MaxFileSize = 1024%>
On déclenche l'upload
<%mySmartUpload.Upload%>
puis la sauvegarde du fichier dans un répertoire déprotégé de notre choix
<%intCount = mySmartUpload.Save(rep)%>
enfin on récupère une erreur éventuelle
<%if err then response.write err.description%>
ou les informations sur les fichiers uploadés
<% For each file In mySmartUpload.Files %>
   <BR>Nom : <%=file.FileName%>
   <BR>Taille : <%=file.Size%> octets
   <BR>Type : <%=file.ContentType%>
<% next%>
Exemple :
<HTML><BODY><CENTER>
<% On Error Resume Next
' Taille max des fichiers (octets)
MFS=1024
' Répertoire de stockage (déprotégé)
rep="/data/upload"
Set mySmartUpload = _
   Server.CreateObject("aspSmartUpload.SmartUpload")
mySmartUpload.MaxFileSize = MFS
mySmartUpload.Upload
intCount = mySmartUpload.Save(rep)
if err = -2147220399 then %>
   <b>Trop gros fichier !</b>
   <i>( <%=MFS%> octets max.)</i>
<%elseif intCount>0 then %>
   <b>Votre fichier a bien été enregistré !</b>
   <% For each file In mySmartUpload.Files %>
      <BR>Nom : <%=file.FileName%>
      <BR>Taille : <%=file.Size%> octets
      <BR>Type : <%=file.ContentType%>
   <% next
elseif err <> 9 then %>
   <b>Erreur d'enregistrement !</b>
   <br><%=err.description%>
<%end if%>
   <FORM METHOD="POST"
      ENCTYPE="multipart/form-data">
   <INPUT TYPE=FILE NAME="userfile"><BR>
   <INPUT TYPE=SUBMIT value="Enregistrer le fichier">
</FORM>
LISTE DES FICHIERS TELECHARGES
<BR><TABLE border>
<% Set FSO = _
Server.CreateObject("Scripting.FileSystemObject")
set fc = FSO.GetFolder(server.MapPath(rep)).Files
for each f in fc %>
   <TR>
      <TH>
         <A href="<%=rep&"/"&f.name%>"
            target="_blank"><%=f.name%></A>
      </TH>
      <TD align=right><%=f.size%></TD>
      <TD><%=f.dateCreated%></TD>
   </TR>
<%next%>
</TABLE>
</CENTER></BODY></HTML>