как поддерживать изображение вслед за сообщением ошибки request в laravel?

Что такой мне нужно проблему, которая, изображение послать формуляр с полем, послав это, и которое быть должен возвращать сообщение ошибки request, теряет изображение... Как я могу делать, чтобы поддерживать в изображение?

1
задан 30.03.2016, 07:23
1 ответ

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

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


И сейчас ответ говорит: в пользу мотивов безопасности, объясненных наверху не держится отборное изображение..., но ты можешь использовать какие-то альтернативы, чтобы не вынуждать пользователя быть должным выбирать новое изображение: хорошо симулируя, что изображение продолжает быть выбранным, или прямо с тем же изображением (если формуляр не был послан).

Здесь я оставляю какие-то из них:

A. Используй AJAX, чтобы посылать данные формуляр

Если вместо того, чтобы посылать формуляр традиционного способа (с submit, пересылая в страницу, определенную в action) ты это посылаешь используя AJAX, тогда никогда ты не будешь терять изображение (потому что страница не меняется), и у тебя не будет этой проблемы.

Если данные о формуляре не санкционируют, просто покажи сообщение ошибки и уже будь. Изображение продолжит быть выбранным в поле.

B. Используй изображение, которое у тебя есть уже на сервере

Изображение было послано уже в сервер, когда был послан формуляр. Если она действительная, сохраняй ее в каком-то сайте временного способа и разъясни пользователю, что уже у тебя есть она (p.e.: меняя поле на сообщение текста или даже показывая ссылку в документ / изображение).

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

C. Используй "кодифицированную" версию изображения

Ты не можешь поддерживать изображение или посылать изображение, которое пользователь не выбрал..., но если пользователь выбирает файл, да, что ты можешь читать это (p.e. с API FileReader) и поддерживать эти начитанные данные. Например, если пользователь выбирает изображение, ты можешь читать Ваш контент, кодировать это и сохранять это в LocalStorage, чтобы это использовать (p.e. как в примере AJAX, заменяя поле на thumb или прямо на скрытое поле) в случае, если формуляр не удастся.

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

1
ответ дан 24.11.2019, 14:40
  • 1
    Я верю в то, что м и # 225; s реальным является env и # 237; или с ajax – roman madrigal 30.03.2016, 08:27
  • 2
    @Alvaro Montoro очень хороший ответ только один согрешил и # 241; или деталь относительно нее и #250; ltima стратегия. Эта в общем не является реальной, так как LocalStorage в общем est и # 225; ограниченная в ~5MB и любое изображение в настоящее время может преодолевать легко этот tama и # 241; или. Прочитай stackoverflow.com/questions/2989284/… и dev-test.nemikor.com/web-storage/support-test – devconcept 30.03.2016, 16:32

Теги

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