#jquery #file-upload #jquery-file-upload
#jquery #файл-загрузка #jquery-file-upload
Вопрос:
В плагине для загрузки файлов Blueipm jQuery я хочу, чтобы файлы загружались в их собственные каталоги.
Я добавил опции для загрузки файлов в новые каталоги, которые, похоже, отлично работают при загрузке, но кнопка удаления теперь не работает должным образом. Загруженный файл удаляется с веб-страницы, но не с сервера.
Я пытался добавить опцию для ‘delete_url’ (и даже delete_dir), но это не работает. Вот весь index.php файл:
<?php
error_reporting(E_ALL | E_STRICT);
require('UploadHandler.php');
$newUploadDir = "files/" . microtime(true) . mt_rand() . "/";
$options = array(
'upload_dir'=>$newUploadDir,
'upload_url'=>'server/php/' . $newUploadDir;
)
$upload_handler = new UploadHandler($options);
Было бы здорово, если бы кто-нибудь был достаточно любезен, чтобы помочь решить эту проблему.
PS могу ли я добавить параметр maxChunkSize таким образом, и каким будет ограничение размера файла в Chrome с ограничением размера блока 10 МБ?
Ответ №1:
Старый вопрос, но все же стоит ответить. Сегодня я работал с версией загрузчика PHP на C # и попытался добавить идентификатор сеанса, в котором вы указываете время. Я столкнулся с той же проблемой.
Прошел год, поэтому первое, что нужно попробовать, это обновить плагин и обработчик загрузки… посмотрите, решит ли это проблему.
Если нет, или если вы остаетесь с более старой версией, вам нужно будет отслеживать, как изменяется переменная upload_dir в обработчике загрузки, от конструктора до функции удаления. Мне показалось, что единственным изменением, которое автор ожидал от людей, было бы изменение имени каталога (например, с «files» на «uploads»), но не добавление подкаталога.
Тот факт, что файлы удаляются не на сервере, а на клиенте, убедительно свидетельствует о том, что функция удаления не работает в правильном каталоге, но возвращается правильный ответ json.
На этой странице вы должны иметь возможность установить для параметра user_dirs значение true, а затем переопределить метод get_user_id, чтобы делать то, что вы хотите.
Ответ №2:
Я сделал УДАЛЕНИЕ работ. Вот мое решение: (server / php -index и UploadHandler)
$ myPath — динамический каталог
index.php :
$upload_dir = полный путь к $myPath $upload_url = полный URL-адрес $ myPath $upload_handler = новый UploadHandler(array( 'upload_dir' => $upload_dir 'upload_url' => $upload_url 'myPath' => $myPath, )); // Я создал новую опцию 'myPath'
UploadHandler
search set_additional_file_properties
защищенная функция set_additional_file_properties($file) { $file-> deleteUrl = $this->options['script_url'] .$this->get_query_separator($this->options['script_url']) .$this->get_singular_param_name() .'='.rawurlencode($file->name) .'amp;myPath='.$this->параметры['myPath'];