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

У меня есть поле файла в моей форме.

Я хочу, чтобы пользователь мог выбрать изображение, нажмите ОК, а затем без отправки формы, просмотрите изображение с меньшим размером. Если все удовлетворительное для пользователя, то нажмите submit и изображение, а также форму отправляется …

Как вы, хорошие профессионалы, делаете это в основном?

благодаря

Solutions Collecting From Web of "Можно ли загружать изображение на сервер без отправки формы?"

Вам необходимо отправить хотя бы форму для загрузки файла и отображения его. Вы можете имитировать загрузку Ajax с помощью iframe .

Возможно, вы захотите взглянуть на следующее:

http://www.atwebresults.com/php_ajax_image_upload/

Я думаю, что лучший способ:

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

Вот статья, которая также может помочь вам

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

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

Я бы сделал это тогда:

  • У вас есть отдельная форма для изображений, убедитесь, что она содержит некоторое поле id, чтобы вы могли связать их все вместе.
  • Чтобы форма изображений автоматически отправлялась с использованием AJAX как часть события onchange в поле файла.
  • Когда вызов AJAX завершается успешно, добавьте элемент img на страницу, чтобы отобразить загруженное изображение.
  • Отправьте остальную часть формы отдельно.

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

Вы можете использовать тег для этого.

В основном вы помещаете свое поле для загрузки в iframe. Когда пользователь загружает изображение, iframe получает перезагрузку, но не всю страницу, в среднем на стороне сервера вы изменяете размер изображения.