Как загрузить несколько файлов одновременно?


Нам нужно загрузить несколько файлов разных типов, есть ли модуль, который будет проверять допустимые типы mime и загружать только допустимые файлы (на основе настроек сайта, например: png, doc, jpg, txt)?

 21
Author: kiamlaluno, 2011-03-03

6 answers

Clientside_validation (drupal-6 и drupal-7) выполняет некоторые дополнительные проверки на стороне клиента, включая проверку загруженных расширений файлов (но не типов MIME). (И, как упоминал @tim.plunkett в комментариях, mimedetect полезен для проверки типа MIME на стороне сервера, но для проверки файл должен быть загружен на сервер.)

Для загрузки нескольких файлов рассмотрите следующее:

  • swfupload (друпал-6; Вспышка)
  • plupload (drupal-6 и drupal-7; Поддерживаются Flash и несколько других технологий; новые/разрабатываются)

Для загрузки нескольких изображений дополнительно рассмотрите следующее:

  • image_fupload (drupal-6; использует swfupload выше)
  • jifupload (drupal-5 и drupal-6; бесплатно; использует Java-апплет)
  • aurigma (drupal-6; покупка программного обеспечения/подписка на услуги требуется)
 27
Author: smokris, 2011-09-28 19:36:47

Нам очень повезло с загрузкой . Он перегибается назад, чтобы обеспечить совместимость между браузерами, используя Silverlight, Flash, HTML5 и возвращаясь к классическим виджетам HTML4 "выбор файла" в зависимости от возможностей браузера.

Модуль интеграции Drupal немного грубоват, но мы успешно использовали его в ряде крупных проектов для заполнения полей изображений. В Drupal 7, я полагаю, они вытащили большую часть пользовательского интерфейса и превратили его в чистый API модуль, который может использоваться такими инструментами, как Мультимедиа, просто для обработки загрузки. Если вы хотите сделать что-то особенно необычное, вам, вероятно, придется написать немного пользовательского кода, чтобы определить, где отображается виджет загрузки, но он очень надежный.

Нам удалось подключиться к его внутренним событиям, чтобы обработать довольно много постобработки, и проверка на наличие типов/откат ошибок проверки, вероятно, может быть выполнена без особых усилий.

 5
Author: Eaton, 2011-03-16 01:29:50

Вот моя вики-страница сравнения в группе обзора аналогичных модулей. http://groups.drupal.org/node/155764

Демпинг содержимого здесь, как сейчас...

Массовый загрузчик Aurigma для CCK (6.x-2.0) Загрузчик Aurigma для модуля Imagefield объединяет коммерческий загрузчик изображений Aurigma с Drupal. Несколько изображений загружаются в одном пакете в поле с несколькими изображениями.

Загрузка изображения (6.x-3.0-rc2) Загрузка изображений (Multiupload), который является дополнением к модулю image и CCK imagefield, дает возможность каждому пользователю, которому разрешено загружать изображения с помощью модуля image или модуля imagefield, загружать несколько изображений одним простым щелчком мыши. Все выбранные изображения загружаются через флэш-модуль (swfupload) и автоматически обрабатываются.

Интеграция с загрузкой (6.x-1.x-dev, 7.x-1.0-beta3) Обеспечивает интеграцию между виджетом Plupload для загрузки нескольких файлов и Drupal. Plupload - это лицензированный GPL инструмент для загрузки нескольких файлов, который может отображать виджеты во Flash, Gears, HTML 5, Silverlight, BrowserPlus и HTML4 в зависимости от возможностей клиентского компьютера.

Загрузка SWFUpload (6.x-2.0-beta8) Модуль SWFUpload для Drupal предоставляет виджет для поля файлов CCK и использует библиотеку SWFUpload для одновременной загрузки нескольких файлов.

Загрузка для поля изображения (6.x-1.x-dev) Вы когда-нибудь хотели, чтобы вы могли загружать группа изображений сразу в поле изображения? Модуль Jupload для Imagefield (jifupload) объединяет Java-апплет Jupload с модулем ImageField для CCK. Несколько изображений загружаются в одном пакете в поле изображения, заданное для нескольких значений.

Другой подход, тот же результат...

Поддержка zip-файлов полей изображений (6.x-1.0-beta2) Это вспомогательный модуль для ImageField. При загрузке нескольких изображений для полей изображений с несколькими значениями этот модуль добавляет возможность загружать несколько изображений в zip-файлах, а не по отдельности.

Импорт поля изображения (5.x-1.5, 6.x-1.10) Импорт полей изображений позволяет пользователям с соответствующими разрешениями импортировать большое количество изображений в тип контента CCK, содержащий поле файла или поле изображения. Модуль может захватывать заголовки и описания с помощью EXIF или IPTC. Примечание: Чтобы использовать этот модуль, вы должны иметь возможность загружать изображения на свой сервер через FTP, SCP или другими способами.

 4
Author: doublejosh, 2011-06-14 21:55:00

Еще один вариант для изображений, который не очень хорошо поддерживается, но работает, - это поддержка zip-файлов ImageField

 2
Author: mikeytown2, 2011-03-13 08:22:40

Если вы можете поместить эти файлы в zip-файл и хотите/должны использовать основной модуль загрузки, вы можете попробовать Несколько загрузок в одиночку (Drupal 6.x).

 2
Author: chirale, 2012-04-18 13:14:06

Загрузка HTML5 http://drupal.org/sandbox/z7/1348240

Эти модули следует рассматривать как упрощенное решение для пакетной загрузки изображений (и других файлов) для Drupal 7 в современных (Совместимый с HTML5) браузер, не более того.

Еще не пробовал, но код понятен и компактен.

 0
Author: gagarine, 2011-12-14 23:31:33