Я пытаюсь интегрировать функцию перетаскивания файлов HTML5 в мой проект KCFinder .Код написан кем-то из форума .Работает нормально.Единственная проблема, если вы пытаетесь загрузить файлы в каталог с именем, содержащим специальные символы Unicode (кириллица и т. Д.).Путь к каталогу, куда должны быть загружены файлы, передается через $ _GET ['dir'].Если я использую кнопку загрузки вместо drag'n'drop, загрузка работает, и я вижу
Content-Disposition: form-data; name="dir"
files/ÑеÑÑ
в данных POST (используя Firebug).Реальный путь к каталогу files/тест
.Если я перетаскиваю файлы со своего компьютера в один и тот же каталог, у меня появляется ошибка
String contains an invalid character" code: "5
xhr.sendAsBinary(postbody);
Перетаскивание работает без ошибок, если имя каталога, в которое я пытаюсь загрузить, имеет толькосимволы Юникода.Я пытался закодировать параметр 'dir' с помощью encodeURIComponent (), но в этом случае ошибка исчезла, но ответивший PHP получает его закодированным ("files /% D1% 82% D0% B5% D1% 81% D1% 82"))
postbody += 'Content-Type: ' + evt.target.thisFileType + '\r\n\r\n' +
evt.target.result + '\r\n--' + boundary +
'\r\nContent-Disposition: form-data; name="dir"\r\n\r\n' +
encodeURIComponent(evt.target.thisTargetDir) + '\r\n--' + boundary + '\r\n--' +
boundary + '--\r\n';
В проекте есть Git.Я не могу опубликовать больше гиперссылок.Вы можете найти его в проекте SourceForge.