Comments 105
Я наивный, думал, что кроме FancyUpload ничего нету. Спасибо за обзор.
+6
Всё как раньше, при попытке загрузить большие файлы браузер виснет, только что проверил в лисички 3.5 и хроме под линухой, оба браузера повисле при нажатии аплоад, а файл грузил не больше, всего 49 метров…
Так что годиться только только для фоток (и то не очень больших), а прочих мелких файликов =(
Так что годиться только только для фоток (и то не очень больших), а прочих мелких файликов =(
0
а в php.ini какой-значение стоит?
0
хотя не заметил, что вы написали что виснет браузер, php.ini тут видимо не при делах
+1
тестил загрузку больше ста фоток (2.5мб в среднем) отлично справляется
Там в дефолтовой поставке идет скрипт на проверку размера и формата совместимости — уверен проблема была в нем (у себя переделал его сразу)
Там в дефолтовой поставке идет скрипт на проверку размера и формата совместимости — уверен проблема была в нем (у себя переделал его сразу)
+2
Я заметил, что браузер виснет во время выгрузки файлов. После выгрузки развисает.
0
это не только для больших, для маленьких тоже, просто маленькие у тебя видимо очень уж быстро грузятся
0
Использую FancyUpload — отлично загружаются файлы размером до 3 мб (больше не требуется, хотя автор плагина писал что загружал и 2 GB). Правда технически загружаю по одному файлу за одно соединение, а не все файлы за раз (а то непонятно какие лимиты установить на размер входящих данных и на время работы скрипта...)
Подвисаний нет.
Но, сталкивался с конфликтом с антивирусом касперского. Вопрос решился обновлением антивируса до 10 версии и настройкой в нем сайта, на которорый осуществляется аплоад, как доверенного.
Подвисаний нет.
Но, сталкивался с конфликтом с антивирусом касперского. Вопрос решился обновлением антивируса до 10 версии и настройкой в нем сайта, на которорый осуществляется аплоад, как доверенного.
0
И не забываем о баге с кукис и http authentication ето касается всех браузеров кроме експлорера.
А так, скрипт весьма неплохой.
А так, скрипт весьма неплохой.
0
Есть такое. У меня тоже повис FF 3.5
0
swfupload лишен таких косяков
swfupload.googlecode.com
у меня репартеры на autopeople.ru загружают им видео ролики больших размеров (200 мб)
swfupload.googlecode.com
у меня репартеры на autopeople.ru загружают им видео ролики больших размеров (200 мб)
0
Меня всегда прикалывают плагины на десятки килобайт, являющимися обертками вокруг 10 строчек, состоящими на половину из перетасовывания настроек.
+3
ну, лично для меня плагин весом в 7кб js + 22 флэш загрузчик — не так уж и критично, если он облегчает жизнь :)
0
к сожалению 90% сторонних плагинов к jquery обвешены не нужным для меня функционалом(так же как и большинство других плагинов, хоть в той же symfony), что негативно сказывается как на размере и скорости работы так и на стабильности, так что для себя разработал следующую схему: разбираюсь как работает плагин, потом переписываю, минимализируя под свои задачи. В итоге, согласен с Wott, килобайты заменяются десятками строк.
0
Каждый выбирает для себя, что ему важнее — производительность приложения, либо скорость разработки этого приложения. Всё зависит от поставленной задачи. Думаю, в большинстве случаев лишние 50-100 Кб на страницу сайта — это не критично (с учетом быстрорастущей ширины каналов пользователей) в сравнении с экономией времени затраченного на разработку.
+1
А никто не знает flash-загрузчик, который кроме загрузки еще картинки пережимает на клиенте? Можно и платный.
+2
Готового такого не знаю. Но не сильно сложно сделать это и с этим плагином. Благо исходник есть)
+2
если мне память не изменяет, то у флеша есть ограничения по работе с локальными файлами с диска пользователя. так что может оказаться, что предварительный ресайз невозможен без предварительной закачки на сервер. но могу врать :)
0
UFO just landed and posted this here
у вконтакта скомуниздь, мультизагрузка и пережим-жим картинок %)
+1
Собрался и написал свой аплоадер под google gears, unobtrusive-аналог загрузчика вконтакте, картинки пережимает, превью показывает, файлы загружает, обычную отправку форм эмулирует — не нужно делать никаких изменений на стороне сервера, есть хелперы для интеграции с django-вскими formset'ами.
Пока документация не готова, но мне нравится, что получается. Пока в качестве preview кину сюда ссылку на него, вдруг кому пригодится. Лицензия MIT, так что если кому интересно — используйте, подключайтесь к разработке. Пиар проведу, так сказать, предварительный.
bitbucket.org/kmike/gearsuploader/wiki/ru
Пока документация не готова, но мне нравится, что получается. Пока в качестве preview кину сюда ссылку на него, вдруг кому пригодится. Лицензия MIT, так что если кому интересно — используйте, подключайтесь к разработке. Пиар проведу, так сказать, предварительный.
bitbucket.org/kmike/gearsuploader/wiki/ru
0
Использую этот загрузчик в ЦМС что пишу на codeigniter.
В самом Uploadify было несколько неприятных глюков, но после последнего апдейта (был в конце лета) почти все хорошо за исключением:
1. Иногда улетает окно выбора файлов если долго искать что выбрать(ФФ+Open Suse 11.1) — возможно проблемы с самим ГТК.
2. Окно выбора файлов не запоминает последнюю директорию, иногда просто не удобно рыскать по попкам (опять же не тестил в вин, в лине возможно проблемы с ГТК).
Одно что не совсем хорошо — в флешке некорректно отображается русский (думаю можно подпилить напильником в флеше)
В самом Uploadify было несколько неприятных глюков, но после последнего апдейта (был в конце лета) почти все хорошо за исключением:
1. Иногда улетает окно выбора файлов если долго искать что выбрать(ФФ+Open Suse 11.1) — возможно проблемы с самим ГТК.
2. Окно выбора файлов не запоминает последнюю директорию, иногда просто не удобно рыскать по попкам (опять же не тестил в вин, в лине возможно проблемы с ГТК).
Одно что не совсем хорошо — в флешке некорректно отображается русский (думаю можно подпилить напильником в флеше)
+3
1) под win ff 3.5.3 пока такого не замечал.
2) опять же, у меня всё запомнило :) вин. ff 3.5.3
пысы: про попки особенно понравилось ;)))
2) опять же, у меня всё запомнило :) вин. ff 3.5.3
пысы: про попки особенно понравилось ;)))
+3
Я задолбался воевать с глюками Uploadify и его сочленения с CI, тупо перешёл на SWFUpload, чему и рад вполне (-:
+2
Не подскажите, как вы решили проблему автоматический созданий сессии в CI и то, что SWFUpload создает свою id сессии при передачи?
На данный момент у нас решено только принудильной подачей своей id сессии как дублирующей :(
На данный момент у нас решено только принудильной подачей своей id сессии как дублирующей :(
0
А как обстоят дела с загрузкой файлов с кириллическими именами?
У меня получилось загрузить только .jpg, и то, имя оказалось пустым.
У меня получилось загрузить только .jpg, и то, имя оказалось пустым.
0
Спасибо за наводку.
0
Ага, у меня те же проблемы на сусе 11.1.
0
Интересный плагин, буду использовать в своих проектах.
0
Плагин может сообщать количество переданной информации клиенту без скриптов со стороны сервера?
+1
A function that triggers when all file uploads have completed. There is no default event handler.
Вы, судя по всему, меня немного не правильно поняли — о количестве переданной информации во время передачи, т.е. чтобы был прогресс загрузки. Сейчас у меня получается видеть только финиш загрузки, без каких-либо промежуточных данных.
Вы, судя по всему, меня немного не правильно поняли — о количестве переданной информации во время передачи, т.е. чтобы был прогресс загрузки. Сейчас у меня получается видеть только финиш загрузки, без каких-либо промежуточных данных.
0
ну, это браузер должен делать. Хром делает, кстати.
0
Есть бага: при загрузке изображений или файлов некоторых, правда у меня не получается локализировать проблему и хоть как-нибудь понять от чего это зависит, плагин загрузив файл на сервак возвращает ошибку — мол никак, не получилось, ты уж прости. Просто редкие файлы грузит, но по окончанию выдаёт что-то вроде: IO Error — 1.zip — 100%, как итог — файл не загрузился.
+1
Это бага видимо во флеше. Если интернет через прокси, с аутентификацией, то плагин, скорее всего работать не будет.
Пробовал другие плагины — ситуация аналогичная.
Поэтому, необходимо оставлять возможность стандартного аплоада через html.
По плагину: недавно внедрил на свой сайт — интерфейс красивый, но есть глючки в старых версиях плагина. Причем примеры идут со старыми, нерабочими версиями, что вносит путаницу, и нет дебагера, позволяющего понять что происходит. В итоге отлаживал скрипты в swfupload (там есть дебагер), а потом подменил его на uploadify. Так же есть нюанс — скрипт аплоада должен быть в отдельной библиотеке или в отдельном блоке script (об этом написано на форуме плагина, пока нашел в чём дело — голову сломал). Вобщем внедрить сложно, но заставить работать — можно.
Посмотреть плагин в действии можно тут:
mp3tter.com
Пробовал другие плагины — ситуация аналогичная.
Поэтому, необходимо оставлять возможность стандартного аплоада через html.
По плагину: недавно внедрил на свой сайт — интерфейс красивый, но есть глючки в старых версиях плагина. Причем примеры идут со старыми, нерабочими версиями, что вносит путаницу, и нет дебагера, позволяющего понять что происходит. В итоге отлаживал скрипты в swfupload (там есть дебагер), а потом подменил его на uploadify. Так же есть нюанс — скрипт аплоада должен быть в отдельной библиотеке или в отдельном блоке script (об этом написано на форуме плагина, пока нашел в чём дело — голову сломал). Вобщем внедрить сложно, но заставить работать — можно.
Посмотреть плагин в действии можно тут:
mp3tter.com
0
Ещё, помогает понимание того, как эта штука работает. Реально, файлы загружаются не в указанную директорию, а во флешку!111. Через файлгетконтекст какой-то. И только потом, тело файла передается постом — скрипту, указанному в настройках. Соответственно, просто указать максимальный размер файла — недостаточно.
Проверь эти настройки в php.ini:
; Maximum size of POST data that PHP will accept.
post_max_size = 20M
; Whether to allow HTTP file uploads.
file_uploads = On
; Maximum allowed size for uploaded files.
upload_max_filesize = 20M
Для сервера nginx — в секции http также необходимо указать:
keepalive_timeout 0;//!!!
client_max_body_size 20m;//
И разрешить обработку флеша, у меня в конфиге это реализовано так:
if (-f $request_filename) {
expires max;
break;
}
if ($request_filename !~ (js|css|ico|gif|jpg|m3u|swf|zip|png|images|robots\.txt|my_index_file\.php*) ) {
rewrite ^/(.*)$ /mp3tter.php/$1 last;
}
Проверь эти настройки в php.ini:
; Maximum size of POST data that PHP will accept.
post_max_size = 20M
; Whether to allow HTTP file uploads.
file_uploads = On
; Maximum allowed size for uploaded files.
upload_max_filesize = 20M
Для сервера nginx — в секции http также необходимо указать:
keepalive_timeout 0;//!!!
client_max_body_size 20m;//
И разрешить обработку флеша, у меня в конфиге это реализовано так:
if (-f $request_filename) {
expires max;
break;
}
if ($request_filename !~ (js|css|ico|gif|jpg|m3u|swf|zip|png|images|robots\.txt|my_index_file\.php*) ) {
rewrite ^/(.*)$ /mp3tter.php/$1 last;
}
+1
вы уже наверное давно локализировали проблему, но для остальных, кто попадет сюда из поиска.
оказывается, у меня проблема была в самом флеше под линукс. он не хотел авторизироваться с помощью http-basic.в винде он спрашивает диалог авторизации, в моей убунте — просто игнорит и выдает ошибку.
буду копать, чтобы обойти эту хрень
оказывается, у меня проблема была в самом флеше под линукс. он не хотел авторизироваться с помощью http-basic.в винде он спрашивает диалог авторизации, в моей убунте — просто игнорит и выдает ошибку.
буду копать, чтобы обойти эту хрень
0
Есть еще одна проблема: ошибка I/O Error возникает при работает с доменами.рф
0
Плагин для вашего любимого jquery.
Я думаю я относился бы к вашему любимому jquery если бы не было так много людей что без него ничего не могут сделать на жаваскрипте.
Я думаю я относился бы к вашему любимому jquery если бы не было так много людей что без него ничего не могут сделать на жаваскрипте.
-4
А почему вы решили что они на jquery могут что-то сделать? Использовать плагины- это одно, а писать самому с использованием фреймворка -это немного другое, имхо, тут тоже необходимо неплохое знание жабаскрипт. И почему бы не любить фреймворк за удобство и функциональность?
Я ЛЮБЛЮ JQUERY больше чем PROTOTYPE :)
Я ЛЮБЛЮ JQUERY больше чем PROTOTYPE :)
+2
Зачем делать что-то на чистом жабоскрипте? Чистый нужен только тогда, когда надо очень мало написать. По онклику скрыть див.
А если писать что-то серьёзное без фреймворка — это уже велосипед (:
А если писать что-то серьёзное без фреймворка — это уже велосипед (:
0
А у всех ли файл попадает в директорию uploads?
Даже скрипт с примером этого не делает у меня.
Даже скрипт с примером этого не делает у меня.
0
Столкнулся с некоторыми «багами» при использовании этого плагина:
1. Если на клиентской стороне работает Касперский, то загрузка каждого файла (прогрессбар) сразу показывает 100%. При отключеном касперском — нормально.
2. (хотя тут возможно виноват сервер) Загрузка больших файлов (около 500Мб) доходит до 100% и все, никаких действий от скрипта вы не дождетесь, возникает ощущение, что скрипт ждет json, но не получает и ожидание это может продолжаться вечно!
IO Error — бывает, но не часто…
1. Если на клиентской стороне работает Касперский, то загрузка каждого файла (прогрессбар) сразу показывает 100%. При отключеном касперском — нормально.
2. (хотя тут возможно виноват сервер) Загрузка больших файлов (около 500Мб) доходит до 100% и все, никаких действий от скрипта вы не дождетесь, возникает ощущение, что скрипт ждет json, но не получает и ожидание это может продолжаться вечно!
IO Error — бывает, но не часто…
0
выше написал как оно работает. Сначала файл загружается во флеш, и только потом сохраняется на сервер. Т.е. в момент, когда градусник показывает 100% — начинается сохранение файла. Просто подождите пока файл сохранится.
0
Настройте в касперском сайт, на который аплоадите файл, как довернный. Правда такую настройку удалось обнаружить только для KAV 10, в девятом ее не нашел…
(Настройка/Защита/Вэб антивирус/Настройка/Оптимизация проверки/кнопка Выбрать/ добавьте сюда записть типа *yoursite.com*), и все будет работать.
(Настройка/Защита/Вэб антивирус/Настройка/Оптимизация проверки/кнопка Выбрать/ добавьте сюда записть типа *yoursite.com*), и все будет работать.
0
Спасибо, как настроить я знаю, да и проблема с прогрессбаром меня не напрягает, но есть начальство которому не нравится такая визуализация процесса загрузки, вот и думал, мало ли кто то находил решение этой проблемы…
0
Это все потому, что касперский любые файлы и письма, отправляемые во внешний инет, сразу «закачивает» на себя, говоря приложению, что все в порядке. Дальше сканит и уже после проверки доставляет адресату. Вот потому у браузера и возникает ощущение, что файл загружен: касперский ему так говорит. Установлено опытным путем, могу ошибаться.
0
Возможно баг — параметр buttonText не принимает utf-8, например, вместо русского текста — цифры.
0
И еще — возможна ли передача текущей пользовательской сессии?
Так получается, что скрипт просто отсылает данные на сервер независимо от браузера.
Так получается, что скрипт просто отсылает данные на сервер независимо от браузера.
0
Дополнительные параметры можно передавать через контейнер scriptdata, примерно так:
function startUpload()
{
var twitt = 'false';
if (document.getElementById('twitt_it').checked == true) twitt = 'true';
$('#uploadify').uploadifySettings('scriptData',{'tag':$('#tag').val(),'msg':$('#msg').val(),'twitt_it':twitt,'author':'recoilme'});
$('#uploadify').uploadifyUpload();
}
function startUpload()
{
var twitt = 'false';
if (document.getElementById('twitt_it').checked == true) twitt = 'true';
$('#uploadify').uploadifySettings('scriptData',{'tag':$('#tag').val(),'msg':$('#msg').val(),'twitt_it':twitt,'author':'recoilme'});
$('#uploadify').uploadifyUpload();
}
0
это уже видимо проблема во флеше, нужно его расчленять и разбираться.
0
существует ли возможность как-то ограничить количество загружаемых файлов при множественной (Multiple) загрузке
0
Достаточно непредсказуемая вещь… Если загружать ~30 файлов за раз, то некоторые вылетают с HTTPError. Это не всегда и не поддаётся систематизации =(
0
Есть еще момент — всегда отдавайте хоть что-то в response сервера, иначе не будут работать события onComplete/onAllComplete.
+1
Единственный неприятный момент в использовании флеша для загрузки файлов — необходимость передавать идентификатор сессии в открытом виде.
Т.е. оно, конечно, не сильно смертельно, если речь идёт об админке — куда доступ одного человека разрешён, другое дело когда это сервис, где толпа народу, имеющая право что-то загружать. Вот тогда уже не так всё кучеряво хотя терпимо.
Кстати, если стоит суровый скрипт (у меня в CakePHP всё сурьёзно) — следует ещё и проверку UserAgent отключать — ибо сессия сессией, а агент-то меняется :)
Спасибо за плагин
Т.е. оно, конечно, не сильно смертельно, если речь идёт об админке — куда доступ одного человека разрешён, другое дело когда это сервис, где толпа народу, имеющая право что-то загружать. Вот тогда уже не так всё кучеряво хотя терпимо.
Кстати, если стоит суровый скрипт (у меня в CakePHP всё сурьёзно) — следует ещё и проверку UserAgent отключать — ибо сессия сессией, а агент-то меняется :)
Спасибо за плагин
0
Как побороть айди сессии при загрузке файлов? есть ли способ его менять на нужный мне?
0
Да действительно очень полезный плагин, но если кто подскажет как его прикрутить к фреймворку, а точнее как должен выглядеть метод контроллера, которому передается массив с файлами. Много мучился привязать его к CI, но ничего не получилось.
0
Вот как сделав у себя (/system/application/modules/upload/ — тут сам плагин и нужные файлы):
Настройка плагина (думаю спокойно можно вынести в отдельный js, но не пробывал)
$(document).ready(function() {
$('#fileUpload').fileUpload({
'uploader': '/system/application/modules/upload/uploader.swf',
'script': '/system/application/modules/upload/upload.php',
'folder': '/assets/images/tmp',
'cancelImg': '/system/application/modules/upload/cancel.png',
'multi': true,
'buttonText': 'select files',
'displayData': 'percentage',
'simUploadLimit': 1,
'fileExt': '*.jpg;*.jpeg;*.gif;*.png',
onAllComplete: function(event, data){
$("#loadTips").append(«Файлов загружено: „+data.filesUploaded+“
»);
$("#loadTips").append(«Ошибок: „+data.errors+“
»);
$("#loadTips").append(«Загружено: „+data.allBytesLoaded+“ байт
»);
},
onComplete: function(event, queueID, fileObj, response, data){
idResp=''; // нужно для моего обработчика резалта онАджаксКомплит
$.post('http://<?=$_SERVER['SERVER_NAME']?>/admin/upload/doupload/', 'name='+fileObj.name+'&path='+fileObj.filePath+'&module=<?=$module;?>&id_pos=<?=$id_pos;?>&conf_name=<?=$conf_name?>', // после загрузки делаем запрос на обработчик (ниже будет пример)
function(data){
idResp = ''; // нужно для моего обработчика резалта онАджаксКомплит
$.get('http://<?=$_SERVER['SERVER_NAME']?>/admin/upload/index/'+data+'/', '',
function(data){
$("#gallery_box").fadeIn(250, function() { $("#gallery_box").append(data)}); /* сюда попадают сразу загруженные изображения */
}
);
});
},
onError: function(event, queueID, fileD, errorObj){
$("#loadTips").append(«event: „+event+“
»);
$("#loadTips").append(«queueID: „+queueID+“
»);
$("#loadTips").append(«fileD: „+fileD+“
»);
$("#loadTips").append(«errorObj.status: „+errorObj.status+“
»);
$("#loadTips").append(«errorObj.text: „+errorObj.text+“
»);
}
});
метод что используется после загрузки /admin/upload/doupload/
function doupload(){
$data['name'] = $this->input->post('name');
$data['path'] = $this->input->post('path');
/* тут любая обработка уже загруженных изображений в folder: /assets/images/tmp у меня — зум, первоначальная обработка, запись в БД… */
}
Думаю этого достаточно. Сам плагин подключается в контроллеры через плагин галереи (сделан по аналогии как делать плагин подключения FCK едитора)
Настройка плагина (думаю спокойно можно вынести в отдельный js, но не пробывал)
$(document).ready(function() {
$('#fileUpload').fileUpload({
'uploader': '/system/application/modules/upload/uploader.swf',
'script': '/system/application/modules/upload/upload.php',
'folder': '/assets/images/tmp',
'cancelImg': '/system/application/modules/upload/cancel.png',
'multi': true,
'buttonText': 'select files',
'displayData': 'percentage',
'simUploadLimit': 1,
'fileExt': '*.jpg;*.jpeg;*.gif;*.png',
onAllComplete: function(event, data){
$("#loadTips").append(«Файлов загружено: „+data.filesUploaded+“
»);
$("#loadTips").append(«Ошибок: „+data.errors+“
»);
$("#loadTips").append(«Загружено: „+data.allBytesLoaded+“ байт
»);
},
onComplete: function(event, queueID, fileObj, response, data){
idResp=''; // нужно для моего обработчика резалта онАджаксКомплит
$.post('http://<?=$_SERVER['SERVER_NAME']?>/admin/upload/doupload/', 'name='+fileObj.name+'&path='+fileObj.filePath+'&module=<?=$module;?>&id_pos=<?=$id_pos;?>&conf_name=<?=$conf_name?>', // после загрузки делаем запрос на обработчик (ниже будет пример)
function(data){
idResp = ''; // нужно для моего обработчика резалта онАджаксКомплит
$.get('http://<?=$_SERVER['SERVER_NAME']?>/admin/upload/index/'+data+'/', '',
function(data){
$("#gallery_box").fadeIn(250, function() { $("#gallery_box").append(data)}); /* сюда попадают сразу загруженные изображения */
}
);
});
},
onError: function(event, queueID, fileD, errorObj){
$("#loadTips").append(«event: „+event+“
»);
$("#loadTips").append(«queueID: „+queueID+“
»);
$("#loadTips").append(«fileD: „+fileD+“
»);
$("#loadTips").append(«errorObj.status: „+errorObj.status+“
»);
$("#loadTips").append(«errorObj.text: „+errorObj.text+“
»);
}
});
метод что используется после загрузки /admin/upload/doupload/
function doupload(){
$data['name'] = $this->input->post('name');
$data['path'] = $this->input->post('path');
/* тут любая обработка уже загруженных изображений в folder: /assets/images/tmp у меня — зум, первоначальная обработка, запись в БД… */
}
Думаю этого достаточно. Сам плагин подключается в контроллеры через плагин галереи (сделан по аналогии как делать плагин подключения FCK едитора)
0
Вот бы к этому плагину прикрутить форму по удалению уже загруженных или загрузку новых файлов вместо уже имеющихся.
0
а cookie он сохраняет?
0
Поправьте в примере: в «checkscript», «script» должен быть с большой буквы: checkScript.
Я долго думал, почему же оно у меня не работает :)
А «folder» как-то не понятно рабоает, все равно добавляет путь к скрипту, хотя в доке и написано: For absolute paths prefix the path with either '/' or 'http'.
Я долго думал, почему же оно у меня не работает :)
А «folder» как-то не понятно рабоает, все равно добавляет путь к скрипту, хотя в доке и написано: For absolute paths prefix the path with either '/' or 'http'.
0
Вопрос, как в файле настроек поменять скажем локализацию Uploadify, не затрагивая основной плагин (в данном случае jquery.uploadify.v2.1.0.min.js), дабы безболезненно в дальнейшем обновлятся.
Или скажем поменять внешний динамически создаваемых вид элементов аплоадера (тот-же програесс бар, когда одинм css не обойтись)?
Или скажем поменять внешний динамически создаваемых вид элементов аплоадера (тот-же програесс бар, когда одинм css не обойтись)?
0
касательно локализации — поднималась тема на офф. форуме плагина, почитайте вот тут:
www.uploadify.com/forum/viewtopic.php?f=3&t=263&p=1099&hilit=localization
www.uploadify.com/forum/viewtopic.php?f=3&t=263&p=1099&hilit=localization
0
<script type=«text/javascript»>
jQuery(document).ready(function() {
jQuery("#uploadify").uploadify({
'uploader': '/flash/uploadify.swf',
'script': '/test.php',
'cancelImg': '/img/admin/cancel.png',
'queueID': 'fileQueue',
'auto': true,
'multi': false,
'method': 'GET',
'scriptAccess': 'always',
'fileDesc': 'Audio (*.mp3)',
'fileExt': '*.mp3',
'onError': function(event,queueID,fileObj,errorObj) { },
'onComplete': function(event,queueID,fileObj,response,data) { }
});
});
</script>
лог апача пишет следующее:
«POST /test.php?folder=%2Fmusic%2F&fileext=%2A%2Emp3 HTTP/1.1» 302 207 "-" «Shockwave Flash» 24188 4
и ещё странная штука. флешка 2 раза вызывает test.php в начале загрузки и в конце.
jQuery(document).ready(function() {
jQuery("#uploadify").uploadify({
'uploader': '/flash/uploadify.swf',
'script': '/test.php',
'cancelImg': '/img/admin/cancel.png',
'queueID': 'fileQueue',
'auto': true,
'multi': false,
'method': 'GET',
'scriptAccess': 'always',
'fileDesc': 'Audio (*.mp3)',
'fileExt': '*.mp3',
'onError': function(event,queueID,fileObj,errorObj) { },
'onComplete': function(event,queueID,fileObj,response,data) { }
});
});
</script>
лог апача пишет следующее:
«POST /test.php?folder=%2Fmusic%2F&fileext=%2A%2Emp3 HTTP/1.1» 302 207 "-" «Shockwave Flash» 24188 4
и ещё странная штука. флешка 2 раза вызывает test.php в начале загрузки и в конце.
0
Видимо всем пофик
0
А как хэндлить ошибки?
Тоесть, если у меня произошла ошибка на стадии, например, копирования файла из временной директории в директорию назначения — как сообщить об этом в скрипт, отправивший файл?
Там в примере uploadify.php в конце есть строкаи
echo '1';
и
echo 'Invalid file type.';
Но как их ловить — непонятно, onError не вызывается, в onAllComplete тоже errors: 0… куда рыть?
Тоесть, если у меня произошла ошибка на стадии, например, копирования файла из временной директории в директорию назначения — как сообщить об этом в скрипт, отправивший файл?
Там в примере uploadify.php в конце есть строкаи
echo '1';
и
echo 'Invalid file type.';
Но как их ловить — непонятно, onError не вызывается, в onAllComplete тоже errors: 0… куда рыть?
+1
Думаю, стоит об этом сказать, но на текущий момент плагин некорректно работает. Возможно, дело в более новой версии jQuery. Но факт остается фактом. upladifySettings вызывает ошибку. Потратил много времени на изоляцию проблемы, и бросил в пользу SWFUpload.
0
и я
у swf upload даже примеры понятнее и приятнее
у swf upload даже примеры понятнее и приятнее
0
Ага, только я оказался таким ветреным, что через 5 месяцев подсел на другую библиотеку, лишенную флеша — Ajax Upload.
0
По крайней мере нет никаких проблем с изоляцией авторизации, подгрузкой и стилизацией аплоадера. Просто нет. И библиотека в целом весяг в 3 раза меньше SWFUpload.
0
эх, один минус. Как я понял, если использовать сторонний класс для заливки файла (class.upload), то прогресс-бара не будет :(
0
Чёрт! *снова удаляет файлы библиотеки*
0
Sign up to leave a comment.
JQuery Uploadify — мультизагрузка файлов с использованием флэш