Как интегрировать загрузку filepond с octobercms? - PullRequest
0 голосов
/ 09 апреля 2019

Мне очень нравится интерфейс filepond, но мне тяжело загружать загруженные изображения в бэкэнд.Мой код работает для обычного ввода файлов.

В настоящее время у меня есть это в моем default.htm

<input type="file" 
    class="filepond"
    name="allimages[]" 
    multiple 
    data-max-file-size="3MB"
    data-max-files="12">

PostForm.php для обработки файла.

 $advert->allimage = Input::file('allimage');

1 Ответ

0 голосов
/ 09 апреля 2019

Это ограничение браузера. При отправке данных с fetch или XMLHttpRequest вы можете использовать только объекты POST, но это означает, что вы должны отправить свою форму асинхронно.

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

Чтобы обойти это, вы можете использовать плагин File Encode , который кодирует файлы как строки данных base64 и отправляет их на сервер.

Отправка форм с очень большими строками в кодировке base64 может привести к нехватке памяти браузерами (особенно на мобильных устройствах). Программное обеспечение безопасности на стороне сервера также может пометить сообщение большой формы как небезопасное и помешать успешной отправке.

...