Le composant ASPSmartUpload permet de gérer les téléchargements de fichiers ou de données en Upload ou en Download à partir d'un serveur hôte.
Ce composant puissant et gratuit offre une gestion avancée des transferts de fichiers en flux montant ou descendant, avec notamment un contrôle des fichiers en Upload, la restriction sur leurs caractéristiques en Download ou encore a gestion des formulaires en mode mixte.
L'installation du composant ASPSmartUpload s'effectue selon les étapes suivantes :
- Télécharger les fichiers sur le site de ASPSmart.
- Décompresser le fichier ZIP.
- Copier les fichiers DLL dans le répertoire C:\WINNT\SYSTEM32.
- Exécuter à partir de l'invite MS-DOS
REGSVR32.EXE C:\WINNT\SYSTEM32\aspSmartUpload.dll .
Le composant ASPSmartUpload comporte un objet principal appelé SmartUpload, lui même comprenant deux collections Files et Form contenant respectivement des objets File et des objets Item.
Objet_SmartUpload
¦¦
= > Collection_Files
¦¦
= > Objet_File
¦¦
= > Collection_Form
¦¦
= > Objet_Item |
L'objet SmartUpload peut être créé directement à partir d'un script ASP.
Set Objet_Upload = Server.CreateObject("AspSmartUpload.SmartUpload") |
Ensuite comme tous les objets intrinsèques à ASP, l'utilisation de l'objet SmartUpload s'effectue come suit :
Objet_Upload.Collections | Propriété | Méthode
Les Collections
Collection |
Description |
Files |
représente une collection d'objets File. |
Form |
représente une collection d'objets Item (champs du formulaire). |
Les Propriétés
Propriété |
Description |
TotalMaxFileSize |
retourne la taille maximale totale autorisée pour l'upload de fichiers. |
MaxFileSize |
retourne la taille maximale autorisée par fichier lors de l'upload. |
AllowedFilesList |
contient la liste des extensions des fichiers autorisées pour l'upload. |
DeniedFilesList |
contient la liste des extensions des fichiers refusées lors de l'upload. |
DenyPhysicalPath |
empêche l'enregistrement de fichiers dans des répertoires autres que les répertoires virtuels. |
ContentDisposition |
modifie le content-disposition. |
DownloadBlockSize |
retourne la taille des blocs d'une source de données lues. |
TotalBytes |
retourne la taille totale en octets des données transmises. |
BinaryData |
retourne l'octet correspondant à l'indice du tableau contenant les données transmises. |
Les Méthodes
Méthode |
Description |
UpLoad |
exécute la transfert en upload du formulaire. |
Save |
sauvegarde tous les fichiers transmis. |
DownloadFile |
exécute le transfert en download d'un fichier. |
DownloadField |
télécharge un fichier à partir d'une base de données. |
FieldToFile |
crée un nouveau fichier contenant les données d'un champ d'une table d'une base de données. |
UploadInFile |
sauvegarde le formulaire complet dans un fichier. |
La collection Files contient l'ensemble des objets File représentant des fichiers spécifiés dans les éléments HTML de transfert de fichier.
Coll_Files.Collection | Propriété | Méthode
Les Collections
Collection |
Description |
File |
représente l'objet File. |
Les Propriétés
Propriété |
Description |
Count |
retourne le nombre d'objet File. |
TotalBytes |
retourne la taille en octets de la collection Files. |
Les Méthodes
Méthode |
Description |
Item(ID) |
retourne l'objet File correspondant à l'identifiant spécifié en paramètre. |
L'objet File correspond au fichier désigné par la valeur d'un champ de l'élément HTML de transfert de fichier.
Objet_File.Propriété | Méthode
Les Propriétés
Propriété |
Description |
Name |
retourne le nom du champ du formulaire. |
FileName |
retourne le nom du fichier saisie par l'utilisateur. |
FileExt |
retourne l'extension du fichier saisie par l'utilisateur. |
FilePathName |
retourne le chemin du fichier saisie par l'utilisateur. |
ContentType |
retourne le Content-Type du fichier saisie par l'utilisateur. |
ContentDisp |
retourne le Content-Disposition du formulaire |
Size |
retourne la taille du fichier. |
ContentString |
retourne le contenu du fichier dans une chaîne de caractères. |
TypeMIME |
retourne le type MIME du fichier saisie par l'utilisateur. |
SubTypeMIME |
retourne le sous-type MIME du fichier saisie par l'utilisateur. |
IsMissing |
retourne True si l'utilisateur n'a pas saisi de fichier. |
BinaryData |
retourne l'octet correspondant à l'indice du tableau contenant les données transmises. |
Les Méthodes
Méthode |
Description |
SaveAs |
sauvegarde le fichier sur le disque. |
FileToField |
sauvegarde le contenu d'un fichier dans le champ d'une table d'une base de données. |
La collection Form représente le formulaire et contient les objets Item.
Objet_Fom.Collection | Propriété | Méthode
Les Collections
Collection |
Description |
Item |
représente l'objet Item. |
Les Propriétés
Propriété |
Description |
Count |
retourne le nombre d'item de la collection. |
Les Méthodes
Méthode |
Description |
Item(ID) |
retourne l'objet Item correspondant à l'identifiant passé en paramètre. |
L'objet Item correspond aux champs de transfert de fichiers compris dans le formulaire.
Objet_Item.Propriétés
Les Propriétés
Propriété |
Description |
Count |
retourne le nombre de valeurs pour cet item. |
Name |
retourne le nom du champ du formulaire. |
Values |
retourne les valeurs du champ du formulaire. |
Exemple [voir]
<!-- Formulaire de saisie -->
<html>
<body>
<form
method="POST"
action="traitement.asp"
enctype="multipart/form-data">
<input type="file" name="fichier1" size="50"><br>
<input type="file" name="fichier2" size="50"><br>
<input type="file" name="fichier3" size="50"><br>
<input type="file" name="fichier4" size="50"><br>
<input type="submit" value="Upload">
</form>
</body>
</html>
<!-- Fichier de traitement traitement.asp -->
<html>
<body>
<%
Dim Objet_SmartUpload
Dim Fichier
Dim i
i = 0
Set Objet_SmartUpload = _
Server.CreateObject("aspSmartUpload.SmartUpload")
Objet_SmartUpload.Upload
For each Fichier In Objet_SmartUpload.Files
If not Fichier.IsMissing Then
Fichier.SaveAs("/aspSmartUpload/Upload/" & Fichier.FileName)
Fichier.SaveAs("c:\temp\" & Fichier.FileName)
Response.Write "" _
& "<table>" _
& "<tr><th>Nom complet</th><td>" _
& Fichier.Name & "</td></tr>" _
& "<tr><th>Taille</th><td>" _
& Fichier.Size & "</td></tr>" _
& "<tr><th>Nom</th><td>" _
& Fichier.FileName & "</td></tr>" _
& "<tr><th>Extension</th><td>" _
& Fichier.FileExt & "</td></tr>" _
& "<tr><th>Chemin</th><td>" _
& Fichier.FilePathName & "</td></tr>" _
& "<tr><th>Type de contenu</th><td>" _
& Fichier.ContentType & "</td></tr>" _
& "<tr><th>Disposition de contenu</th><td>" _
& Fichier.ContentDisp & "</td></tr>" _
& "<tr><th>Type MIME</th><td>" _
& Fichier.TypeMIME & "</td></tr>" _
& "<tr><th>Sous-Type MIME</th><td>" _
& Fichier.SubTypeMIME & "</td></tr>" _
& "</table>"
i = i + 1
End If
Next
Response.Write "<p>" & Objet_SmartUpload.Files.Count _
& " fichiers pouvaient être uploadés.</p>"
Response.Write "<p>" & i & " fichiers uploadés.</p>"
%>
</body>
</html> |