DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / Développer une application ou un site / Champs, fenêtres et pages / Champs : Types disponibles / Champ Upload
  • Evénements gérés par défaut
  • Evénement de réception des fichiers
  • Exemple
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
Evénements gérés par défaut
WEBDEV gère par défaut les événements suivants (ordre d'apparition sous l'éditeur de code) sur le champ de type Upload :
EvénementCondition d'exécution
Initialisation
(Code serveur)
Exécuté à l'ouverture de la page. *
A chaque modification de la liste des fichiers sélectionnés
(Code navigateur)
Exécuté lors de la modification de la liste des fichiers à uploader.
Dans le cas d'un champ Upload mono fichier, cet événement est exécuté dès qu'un fichier est sélectionné.
Dans le cas d'un champ Upload multi fichiers, cet événement est exécuté dès qu'un fichier est ajouté dans la liste.
Progression du transfert
(Code navigateur)
Exécuté lors de l'envoi des fichiers sur le serveur.
Lors de l'avancement de l'envoi, cet événement est régulièrement appelé pour permettre la mise à jour d'une éventuelle jauge.

Pour plus de détails, reportez-vous à l'exemple unitaire "Upload ou Download d'un fichier" livré en standard avec WEBDEV.
Réception des fichiers uploadés
(Code serveur)
Exécuté lors de la réception des fichiers uploadés par le serveur.
ATTENTION : Si vous utilisez les champs Upload prédéfinis (mono fichier ou multi fichier), le code présent dans cet événement doit être modifié pour indiquer l'emplacement où les fichiers doivent être copiés sur le serveur.
L'événement "Réception des fichiers uploadés" est exécuté en AJAX. Il est possible d'utiliser toutes les fonctions supportées en code serveur AJAX. Cet événement permet notamment en fin d'upload de mettre à jour la page sans faire un aller-retour supplémentaire vers le serveur.
Après réception des fichiers uploadés
(Code navigateur)
Exécuté lorsque tous les fichiers ont été uploadés sur le serveur.
Permet notamment d'exécuter un événement navigateur lorsque l'upload est terminé, sans avoir à retourner sur le serveur.


(*) Par défaut, l'événement "Initialisation" de chaque champ est exécuté selon l'ordre de création des différents champs dans la page. Pour modifier cet ordre d'exécution :
  1. Sous le volet "Page", dans le groupe "Edition", déroulez "Navigation" et sélectionnez "Editer".
  2. Dans la fenêtre qui s'affiche, utilisez les flèches situées sur la droite pour modifier l'ordre d'initialisation des champs.
Evénement de réception des fichiers
L'événement "Réception des fichiers uploadés" permet de gérer l'emplacement des fichiers uploadés sur le serveur. Cet événement permet également de gérer les paramètres passés par la fonction UploadLance.
En effet, la fonction UploadLance permet de lancer l'upload des fichiers. Si la fonction UploadLance est appelée avec des paramètres supplémentaires, ces paramètres sont transmis à l'événement "Réception des fichiers uploadés" à la fin de l'upload. Pour récupérer ces paramètres, il est nécessaire de déclarer une procédure dans cet événement (via l'instruction PROCEDURE).
Cette procédure est de la forme :
PROCEDURE NomProcédure(<Paramètre 1> [, ... [, <Paramètre N>]])
L'événement "Réception des fichiers uploadés" peut également permettre de charger les images uploadées dans une rubrique mémo d'un fichier HFSQL, via la fonction HAttacheMémo.
L'événement "Réception des fichiers uploadés" est exécuté en AJAX. Il est possible d'utiliser toutes les fonctions supportées en code serveur AJAX.
Exemple de code utilisé dans l'événement "Réception des fichiers uploadés" :
// Insérer ici le code de traitement des fichiers uploadés
// Exemple de code :
// Copie le fichier uploadé dans un répertoire spécifique
// UploadCopieFichier(MoiMême, sRépertoireDestination, "")
 
// Traitement de chaque fichier à uploader
POUR Indice = 1 À NbFichiersAUploader
Trace(UploadNomFichier(UPL_Upload, Faux, Indice))
Trace(UploadNomFichier(UPL_Upload, Vrai, Indice))
UploadCopieFichier(UPL_Upload, "c:\temp2", "", Indice)
FIN
Exemple
Exemple de code permettant de charger les images uploadées depuis un champ Upload multi-fichiers dans une rubrique mémo.
// Pour chaque image uploadée
POUR i = 1 _À_ UPL_ChampUpload.Occurrence
// Ajout dans la base de données
HRAZ(Photo)
EcranVersFichier()
 
// UploadNomFichier(UPL_ChampUpload, Vrai, i) :
// permet de récupérer le chemin du ième fichier uploadé sur le serveur
// Ce fichier est un fichier temporaire créé sur le serveur
// Ce fichier est donc supprimé automatiquement à la fin de l'événement
// "Réception des fichiers uploadés"
HAttacheMémo(Photo, Image, UploadNomFichier(UPL_ChampUpload, Vrai, i))
 
HAjoute(Photo)
FIN
Liste des exemples associés :
Upload ou Download d'un fichier Exemples unitaires (WEBDEV) : Upload ou Download d'un fichier
[ + ] Upload (copier vers le serveur) et download (télécharger depuis le serveur) d'un fichier :
- Copier un fichier du poste navigateur vers le poste serveur
- Télécharger un fichier présent sur le serveur
- Télécharger un fichier présent sur le serveur grâce à un lien
- Télécharger un fichier présent sur le serveur en demandant son ouverture
Version minimum requise
  • Version 15
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 25/05/2022

Signaler une erreur ou faire une suggestion | Aide en ligne locale