Мультизагрузка картинок jquery uploadify

В противоположность задаче, рассмотренной в статье про скачивание (загрузку с сервера)  иногда бывает нужно загрузить несколько файлов одновременно (или просто загрузить файл без обновления страницы). Встроенные HTML-формы и ajax (сам по себе) не позволяют загружать файлы без обновления страницы. Решается задача добавлением фрейма (фреймов), в которых и происходит загрузка, либо с использованием FLASH-загрузчика.

Удобный плагин для одновременной загрузки нескольких файлов с использованием Flash - JQuery uploadify . С возможностями плагина можно ознакомиться на официальном сайте. Там же можно посмотреть demo и найти рабочий пример

Некоторые сложности, которые могут возникнуть при работе с Uploadify-плагином :

Ошибки Uploadify при загрузке файла

Uploadify выдаёт сообщение http error
Сообщение об ошибке Uploadify IO error

Как правило, ошибки возникают из-за настройки хостинга - вносим в .htaccess строки для проверки

LimitRequestBody 10000000
php_value upload_max_filesize 256M
php_value post_max_size 300M
php_value max_input_time 500
SecFilterEngine Off

Uploadify HTTP Error

Как пофиксить ошибку Http error при загрузке файла

# решается проблема с загрузкой
# файлов при помощи FLASH-загрузчика
<IfModule mod_security.c>
SecFilterEngine Off
SecFilterScanPOST Off
</IfModule>
<IfModule security_module>
SecFilterEngine Off
SecFilterScanPOST Off
</IfModule>
<IfModule security2_module>
SecFilterEngine Off
SecFilterScanPOST Off
</IfModule>

HTTP-ошибка 302 - редирект

  • Если файл скрипта проверяет авторизацию, то следует иметь ввиду, что сессия флэш-загрузчика отличается от сессии браузера, то есть флэш-загрузчик фактически не определяется как авторизованный пользователь. Для корректной работы в этом случае следует включить информацию о сессии в scriptData и “вручную” разбирать её в скрипте
  • Если в .htaccess настроена переадресация на хост с www или без www - возможно, что загрузчик при попытке передать файл получает ответом редирект на другой домен

При работе с Uploadify не получается:

Не могу добавить русский текст на кнопку - вместо русских букв какие-то цифры. Действительно, Uploadify не поддерживает надписи на русском языке. Можно использовать изображение кнопки (параметр buttonImg).

При загрузке файлов с названиями на русском языке в кодировке windows получаются кракозябры. Это не к плагину, а к файловой системе Linux. В скрипте загрузки можно обработать имя файла, например, транслитерировать его.. или задать цифробуквенную комбинацию. Либо конвертировать имя файла при помощи функции iconv
$targetFile = str_replace('//','/',$targetPath) . iconv('UTF-8', 'WINDOWS-1251', urldecode($_FILES['Filedata']['name']));

Метки: ,

Автор будет признателен, если Вы поделитесь ссылкой на статью, которая Вам помогла:
BB-код (для вставки на форум)

html-код (для вставки в ЖЖ, WP, blogger и на страницы сайта)

ссылка (для отправки по почте)

1 комментарий к записи “Мультизагрузка картинок jquery uploadify”

  1. Татьяна сообщает :

    Невероятно помогли! Спасибо. Русские название загружаются теперь в нужной кодировке.

Добавить комментарий