BlueMP JQuery плагин пользовательские пользователи dirs использование

У меня есть класс UploadHandler с параметрами и конструктором:

    function __construct($profile_id, $options = null, $initialize = true, $error_messages = null) {
$this->response = array();
$this->options = array(
'script_url' => $this->get_full_url().'/'.basename($this->get_server_var('SCRIPT_NAME')),
'upload_dir' => dirname($this->get_server_var('SCRIPT_FILENAME')).'/files/'.$profile_id.'/', //'.$this->options['profile_id'].'/',
'upload_url' => $this->get_full_url().'/files/'.$profile_id.'/', //.$profile_id.'/' ---'.$this->options['profile_id'].'/',
'input_stream' => 'php://input',

Мой $ profile_id — это идентификатор профиля пользователя.
Это значение помещается как скрытое значение в форму загрузки файла.
Затем выполняется загрузка файла. Мой файл находится в каталоге, указанном пользователем в profile_id.

Но если мне нужно увидеть существующие файлы для пользователя, Плагин выполняет сканирование корневого каталога ‘server / php /’.

Хорошо. На момент написания этого поста мой случай работал хорошо. Пожалуйста, прочитайте следующее, чтобы добавить каталог пользователей о моментах загрузки.

  1. В этом случае вам нужно переключить переменную POST / GET в server / php / index.php:

    if(isset($_POST['profile_id'])) {
    $profile_id = $_POST['profile_id'];}
    

    if (isset ($ _ GET [‘profile_id’])) {
    $ profile_id = $ _GET [‘profile_id’];
    }

  2. Поместите $ profile_id в класс (index.php):

    $ upload_handler = new CustomUploadHandler ($ profile_id, $ вариантов);

  3. Измените main.js blueimp из строки 58 (замените следующим кодом):

    } else {
    // Load existing files:
    $('#fileupload').addClass('fileupload-processing');
    //var profile_id = Session["profile_id"];
    //var profile_id = oForm.elements["profile_id"].value;
    //var ee = $('#fileupload').fileupload('option', 'url');
    var form = $("#fileupload");
    var profile_id = $("[name='profile_id']", form).val();
    //alert(ee);
    //alert(profile_id);
    $.ajax({
    // Uncomment the following to send cross-domain cookies:
    //xhrFields: {withCredentials: true},
    url: $('#fileupload').fileupload('option', 'url') +'?profile_id='+profile_id,
    //url: 'server/php/files/'+profile_id +'/',
    dataType: 'json',
    context: $('#fileupload')[0]
    }).always(function () {
    $(this).removeClass('fileupload-processing');
    }).done(function (result) {
    $(this).fileupload('option', 'done')
    .call(this, $.Event('done'), {result: result});
    });
    

    }

  4. Вы должны иметь скрытый ввод с вашим пользователем (ID, XX, TTT) в #fileupload:

  5. Наслаждайтесь!

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]