Нам нужно загрузить несколько файлов разных типов, есть ли модуль, который будет проверять действительные типы MIME и загружать только действительные файлы (в зависимости от настроек сайта, например: png, doc, jpg, txt)?
Нам нужно загрузить несколько файлов разных типов, есть ли модуль, который будет проверять действительные типы MIME и загружать только действительные файлы (в зависимости от настроек сайта, например: png, doc, jpg, txt)?
Ответы:
clientide_validation (drupal-6 и drupal-7) выполняет некоторые дополнительные проверки на стороне клиента, включая проверки расширений загружаемых файлов (но не типов MIME). (И, как упоминалось в комментариях @ tim.plunkett, mimedetect полезен для проверки типа MIME на стороне сервера, но файл должен быть загружен на сервер для проверки.)
Для загрузки нескольких файлов учтите следующее:
Для загрузки нескольких изображений дополнительно учтите следующее:
Нам повезло с Plupload . Он наклоняется назад, чтобы обеспечить кросс-браузерную совместимость, используя Silverlight, Flash, HTML5 и возвращаясь к классическим виджетам HTML4 «Выбрать файл» в зависимости от возможностей браузера.
Модуль интеграции Drupal немного грубоват, но мы успешно использовали его в ряде крупных проектов для заполнения полей изображений. Я полагаю, что в Drupal 7 они извлекли большую часть пользовательского интерфейса и превратили его в чистый модуль API, который может использоваться такими инструментами, как Media, просто для обработки загрузки. Если вы хотите сделать что-то особенно интересное, вам, вероятно, придется написать немного пользовательского кода, чтобы обрабатывать, где отображается виджет загрузки, но он очень надежный.
Нам удалось подключиться к его внутренним событиям, чтобы обработать немало постобработки, и проверка на наличие MIMEtypes / откат ошибок валидации, вероятно, могла бы быть выполнена без особых усилий.
Вот мое вики для сравнения в группе «Подобный модуль». http://groups.drupal.org/node/155764
Сбрасывает контент здесь как сейчас ...
Aurigma Mass Uploader для CCK (6.x-2.0) Модуль Aurigma Uploader для Imagefield объединяет коммерческий Aurigma Image Uploader с Drupal. Несколько изображений загружаются в одном пакете в поле нескольких изображений.
Image FUpload (6.x-3.0-rc2) Image FUpload (Multiupload), который является дополнением к изображению и модулю поля изображения CCK, дает возможность каждому пользователю, которому разрешено загружать изображения с помощью модуля изображения или модуля поля изображения, загружать несколько изображения одним простым нажатием. Все выбранные изображения загружаются через флэш-модуль (swfupload) и автоматически обрабатываются.
Интеграция с Plupload (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 для одновременной загрузки нескольких файлов.
jUpload для Imagefield (6.x-1.x-dev) Вы когда-нибудь хотели, чтобы вы могли загрузить группу изображений сразу в поле изображения? Модуль jUpload for Imagefield (jifupload) интегрирует Java-апплет JUpload с модулем ImageField для CCK. Несколько изображений загружаются в одном пакете в поле изображения, заданное для нескольких значений.
Другой подход, тот же результат ...
Поддержка zip для ImageField (6.x-1.0-beta2) Это вспомогательный модуль для ImageField. При загрузке нескольких изображений для полей изображений с несколькими значениями этот модуль добавляет возможность загрузки нескольких изображений в виде zip-файлов, а не по отдельности.
Импорт поля изображения (5.x-1.5, 6.x-1.10) Импорт поля изображения позволяет пользователям с соответствующими разрешениями импортировать большое количество изображений в тип содержимого CCK, который содержит поле файла или поле изображения. Модуль может получать заголовки и описания, используя EXIF или IPTC. Примечание: чтобы использовать этот модуль, вы должны иметь возможность загружать изображения на ваш сервер через FTP, SCP или другими способами.
Еще один пример для изображений, которые не очень хорошо поддерживаются, но работают, это поддержка zip в ImageField.
Если вы можете поместить эти файлы в zip-файл и хотите / должны использовать основной модуль Upload, вы можете попробовать Multiple Upload Alone (Drupal 6.x).
HTML5 Upload http://drupal.org/sandbox/z7/1348240
Эти модули следует рассматривать как оптимизированное решение для пакетной загрузки изображений (и других файлов) для Drupal 7 в современном (совместимом с HTML5) браузере, и не более того.
Еще не пробовал, но код понятен и компактен.