gpt4 book ai didi

php - 我怎样才能在 laravel 中获得旧值图像

转载 作者:行者123 更新时间:2023-12-04 12:46:21 25 4
gpt4 key购买 nike

我是 laravel 新手。我有一个表单注册,包含的字段是头像,有些字段需要验证。我从我的计算机上传图片,但是当我提交表单时,如果某些字段未通过验证,则图片文件丢失。我怎样才能保留上传的旧照片?对于文本字段,我可以使用 old() 函数来获取旧值,但是对于输入文件,我不知道如何在表单未通过验证时保留值。

(有一些建议:当输入文件更改时使用ajax将值放入 session ...)

对不起,我的英语水平不好,谢谢你。

最佳答案

不,文件输入不能由 Laravel 或任何软件预填充。您的网站(和任何网站)不知道也不应该知道该文件的本地路径。想象一下如果他们这样做会带来怎样的安全风险!您可以诱骗用户上传他们的 SSH 私钥或其他东西。

您需要做的是无论如何处理上传的文件,即使存在验证错误也是如此。

然后您可以将其以待定状态存储在您的数据库中,或者为其分配一些唯一的哈希值,并将匹配的哈希值存储在用户的 session 中。重点是能够识别属于该特定用户的不完整上传。

然后当您显示表单时,从 session 或数据库中检索那些不完整的文件,并在文件上传旁边显示缩略图。这告诉用户他们不需要重新上传该文件。只要确保他们也有办法删除它,以防他们改变主意。

一旦正确提交表单,然后清除 session 哈希或更新数据库状态以完成;无论你需要做什么。

Andrewtweber 回答得很好所以我粘贴在这里。感谢他引用: Laravel 5.1: keep uploaded file as old input

关于php - 我怎样才能在 laravel 中获得旧值图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46548349/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com