Blue Imp, несколько загрузок, по одной, с пользовательскими входами отправляет массив ВСЕХ входов? - PullRequest
0 голосов
/ 27 августа 2018

Я основываю нашу страницу загрузки на прекрасно готовой демонстрации BlueImp, и у меня были небольшие проблемы на пути, пытаясь понять все внутренние механизмы в достаточной степени. Я пытаюсь разрешить пользователю добавлять несколько файлов, но они загружают только один файл за раз. Я успешно сделал это с sequentialUploads:true в опциях.

Кроме того, я использовал сценарий include JS Template для включения дополнительных полей в загрузку, и он работает, как и ожидалось, EXCEPT , что при каждой последовательной загрузке SINGLE массив $ _FILES имеет только один элемент (с индексом 0), но включен весь массив этих пользовательских значений (индексы 0-9). В связи с этим я не могу определить идентификатор и название программы для файла, который только что завершил загрузку.

Как ограничить отправленные ($ _POST) данные для соответствия одному загруженному файлу?

UploadHandler.php

$_POST (
    [program_id] => Array (
            [0] => 1
            ...
            [9] => 10
    )
    [title] => Array  (
            [0] => Program 1
            ...
            [9] => Program 10
        )
)
$_FILES (
    [files] => Array (
            [name] => Array ( [0] => 109_0158.MP4 )
            [type] => Array ( [0] => video/mp4)
            [tmp_name] => Array ( [0] => C:\uploads\tmp\php6AEE.tmp )
            [error] => Array ( [0] => 0 )
            [size] => Array ( [0] => 204109399 )
        )

)

1 Ответ

0 голосов
/ 27 августа 2018

Я читаю ДОКУМЕНТЫ ТОП-ВНИЗ, а клянусь этого не было до недавнего времени !! (да, верно):

Согласно документам данные должны быть связаны!

$('#fileupload').bind('fileuploadsubmit', function (e, data) {
    var inputs = data.context.find(':input');
    if (inputs.filter(function () {
            return !this.value && $(this).prop('required');
        }).first().focus().length) {
        data.context.find('button').prop('disabled', false);
        return false;
    }
    data.formData = inputs.serializeArray();
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...