Задать вопрос
@Dreaded

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

Пользователь заполняет форму, в которой есть текстовые поля и поля загрузки файла.
Если какие то данные в форме не проходят валидацию, то в базу они не отправляются, а форма перезагружается с указанием ошибок.
Что бы пользователю не пришлось полностью заново заполнять форму, текстовые поля прошедшие валидацию я подставляю в загруженную форму, примерно следующим образом:
<input type="text" name="homepage" value="<?=($validValue) ?? '';?>">

Возможно ли подставить в форму уже загруженный пользователем файл? И если да то как ?
  • Вопрос задан
  • 71 просмотр
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
@iljaGolubev
Небезопасно для пользователей, поэтому браузер не даст загрузить с диска файл который явно не указан пользователем.
Ваше решение: не перезагружать страницу при отправке формы - используйте ajax.
Ну или придумать что-то используя:
1. Загрузить файл в браузер jsfiddle.net/Bwj2D/11
2. Сохранить в localStorage https://hacks.mozilla.org/2012/02/saving-images-an...
3. On Submit: Если в localStorage есть файл - отправлять его как base64 на сервер.
4. После POST->redirect показать, что в localStorage есть файл. Дать возможность его удалить. Если пользователь загружает новый файл выполнить пункт 1.
... помоему, ajax проще
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы