Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP

Loading…

Complete vs Filecomplete #72

Closed
ne3Vubeki opened this Issue · 16 comments

2 participants

@ne3Vubeki

В чем разница этих функций?
Работают одинаково, только Filecomplete срабатывает перед complete.

А еще progress и fileprogress?

@RubaXa
Owner
  • complete — срабатывает на окончание загрузки всех файлов
  • filecomplete — каждого файла
@ne3Vubeki

У меня в мульти срабатывают обе на каждом файле, сначала filecomplete, затем complete
Chrome 23.0.1271.95 m, W Vista

@RubaXa
Owner

Если вы говорите о примере, то там файлы грузятся по одному.

@ne3Vubeki

В этом примере есть одиночная, мульти и загрузка изображений

@RubaXa
Owner

Это только выбор N-файлов, но загрузка там происходит по одному, просто такой пример.

@RubaXa
Owner
file.xhr = FileAPI.upload({
    url: 'http://www.rubaxa.org/index.php',
    files: { file: file }, // <-- вот, смотрите
    ...
});
@ne3Vubeki

Вижу, т.е. функция вызывается отдельно для каждого файла?
А есть пример с одновременной загрузкой?

@RubaXa
Owner

Нужно просто передать вместо одного файла, весь массив, например так:

FileAPI.event.on(inputElement, 'change', function (evt){
    var files = FileAPI.getFiles(evt);

    FileAPI.upload({
        url: '...',
        files: { myFiles: files }
    });
});
@ne3Vubeki

В этом случаем обработчик PHP одновременно получает сразу все файлы?

@RubaXa
Owner

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

@RubaXa
Owner

Получить несколько файлов, можно только в одному случае, если у вас включена нарезка изображения при upload'е, то тогда помимо оригинала, будут отправлены и другие изображения одним запросом.

@ne3Vubeki

Увидел, вот только получается странный массив $_FILES:

Array
(
    [file] => Array
        (
            [name] => Array
                (
                    [0] => mangal_M.pdf
                )

            [type] => Array
                (
                    [0] => application/pdf
                )

            [tmp_name] => Array
                (
                    [0] => /tmp/phpmCQbN9
                )

            [error] => Array
                (
                    [0] => 0
                )

            [size] => Array
                (
                    [0] => 6069380
                )

        )

)

где при новой загрузке меняются ключи [0]->[1]->[2] и т.д. Это так и должно быть?

@RubaXa
Owner

Да, всё верно. Хотя с учетом php, это не очень удобно, наверно стоит это изменить и убрать индексы вообще.

@ne3Vubeki

Да, это было бы гораздо удобнее, т.к. индексы эти там не нужны.

@RubaXa
Owner

Попробуйте, dev branch:

@ne3Vubeki

Все работает, спасибо

@RubaXa RubaXa closed this
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.