Comment télécharger plusieurs fichiers à la fois?


22

Nous devons télécharger plusieurs fichiers de différents types. Existe-t-il un module qui vérifiera les types de mime valides et téléchargera uniquement les fichiers valides (en fonction des paramètres du site, par exemple: png, doc, jpg, txt)?

Réponses:


27

clientside_validation (drupal-6 et drupal-7) effectue des vérifications côté client supplémentaires, y compris des vérifications sur les extensions de fichiers téléchargées (mais pas sur les types MIME). (Et, comme @ tim.plunkett l'a mentionné dans les commentaires, mimedetect est utile pour la validation du type MIME côté serveur, mais le fichier doit être téléchargé sur le serveur pour être validé.)

Pour télécharger plusieurs fichiers, tenez compte des éléments suivants:

  • swfupload (drupal-6; Flash)
  • plupload (drupal-6 et drupal-7; Flash et plusieurs autres technologies prises en charge; nouveau / en cours de développement)

Pour télécharger plusieurs images , tenez également compte de ces éléments:

  • image_fupload (drupal-6; utilise swfupload ci-dessus)
  • jifupload (drupal-5 et drupal-6; gratuit; utilise l'applet Java)
  • aurigma (drupal-6; achat de logiciel / abonnement au service requis)

2
J'ai posé des questions sur les types MIME car j'ai lu que leur utilisation est une meilleure pratique que de simplement vérifier les extensions de fichier.
palbakulich

@palhmbs - Vous avez bien lu. Vous devez toujours vérifier le type MIME des fichiers téléchargés.
Christian

1
L'un des modules ci-dessus pourrait s'intégrer à MimeDetect et gérer cela pour vous.
tim.plunkett

Si vous êtes prêt à étendre clientside_validation pour utiliser mimedetect, veuillez publier le code quelque part et laissez-nous ajouter la fonctionnalité pour un usage général.
Capi Etheriel

5

Nous avons eu une excellente chance avec Plupload . Il se plie en quatre pour obtenir une compatibilité entre les navigateurs, en utilisant Silverlight, Flash, HTML5 et en revenant aux widgets HTML4 classiques de sélection de fichier en fonction des capacités du navigateur.

Le module d'intégration Drupal est un peu rude, mais nous l'avons utilisé avec succès sur un certain nombre de grands projets pour remplir les champs d'image. Dans Drupal 7, je pense qu'ils ont retiré la majeure partie de l'interface utilisateur et l'ont transformée en un module API pur qui peut être utilisé par des outils comme Media simplement pour gérer le travail de téléchargement. Si vous voulez faire quelque chose de particulièrement funky, vous devrez probablement écrire un peu de code personnalisé pour gérer l'emplacement d'affichage du widget de téléchargement, mais c'est très solide.

Nous avons réussi à lier ses événements internes pour gérer un peu de post-traitement, et la vérification des types MIME / erreurs de validation pourrait probablement être effectuée sans trop de bricolage.


1
Avez-vous déjà utilisé la version D6 de Plupload?
doublejosh

@Eathon Avez-vous une idée concernant le téléchargement automatique dans le module plupload. J'ai eu l'idée de la discussion drupal.org/node/1804382#comment-7810763 . Il existe également une solution stackoverflow.com/questions/8137229/… , mais je ne sais pas comment intégrer avec drupal à partir de l'API
mohit_rocks

4

Voici mon wiki de comparaison dans le groupe de révision de module similaire. http://groups.drupal.org/node/155764

Vider le contenu ici tel qu'il est maintenant ...

Aurigma Mass Uploader pour CCK (6.x-2.0) Le module Aurigma Uploader pour Imagefield intègre le Aurigma Image Uploader commercial avec Drupal. Plusieurs images sont téléchargées en un seul lot dans un champ d'image multiple.

Image FUpload (6.x-3.0-rc2) Image FUpload (Multiupload) qui est un ajout à l'image et au module imagefield de CCK, donne la possibilité à chaque utilisateur autorisé à télécharger des images à l'aide du module image ou du module imagefield, d'en télécharger plusieurs images en un seul clic. Toutes les images sélectionnées sont téléchargées via un module flash (swfupload) et sont automatiquement traitées.

Intégration Plupload (6.x-1.x-dev, 7.x-1.0-beta3) Fournit une intégration entre le widget Plupload pour télécharger plusieurs fichiers et Drupal. Plupload est un outil de téléchargement de fichiers multiples sous licence GPL qui peut présenter des widgets dans Flash, Gears, HTML 5, Silverlight, BrowserPlus et HTML4 selon les capacités de l'ordinateur client.

SWFUpload (6.x-2.0-beta8) Le module SWFUpload pour Drupal fournit un widget pour Filefield de CCK et utilise la bibliothèque SWFUpload pour autoriser plusieurs téléchargements de fichiers simultanément.

jUpload pour Imagefield (6.x-1.x-dev) Avez-vous déjà souhaité pouvoir télécharger un groupe d'images à la fois dans un champ d'image? Le module jUpload pour Imagefield (jifupload) intègre l'applet Java JUpload avec le module ImageField pour CCK. Plusieurs images sont téléchargées en un seul lot dans un ensemble de champs d'image pour plusieurs valeurs.

Approche différente, même résultat ...

Prise en charge du zip ImageField (6.x-1.0-beta2) Il s'agit d'un module d'assistance pour ImageField. Lors du téléchargement de plusieurs images pour des champs d'image avec plusieurs valeurs, ce module ajoute la possibilité de télécharger plusieurs images dans des fichiers zip au lieu de individuellement.

Imagefield Import (5.x-1.5, 6.x-1.10) Imagefield Import permet aux utilisateurs disposant des autorisations appropriées d'importer un grand nombre d'images dans un type de contenu CCK qui contient un champ de fichier ou un champ d'image. Le module peut récupérer des titres et des descriptions en utilisant EXIF ​​ou IPTC. Remarque: Pour utiliser ce module, vous devez pouvoir télécharger des images sur votre serveur via FTP, SCP ou d'autres méthodes.




0

Téléchargement HTML5 http://drupal.org/sandbox/z7/1348240

Ces modules doivent être considérés comme une solution rationalisée pour le téléchargement par lots d'images (et d'autres fichiers) pour Drupal 7 dans un navigateur moderne (compatible HTML5), rien de plus.

Je n'ai pas encore essayé mais le code est clair et compact.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.