Laravel是否支持返回Redirect :: back() - > withFile()?

时间:2014-08-25 17:47:02

标签: php file validation laravel form-submit

我是Laravel的新手,

如果laravel对输入文本进行验证

<input type="text name="title" />

然后当验证失败时,它将返回输入文本值

return Redirect::back()->withInput()

laravel对文件有这个功能吗?

<input type="file" name="testfile" />

return Redirect::back()->withFile()

以便在验证失败时将临时文件存储在input type="file"中。

1 个答案:

答案 0 :(得分:6)

不,它没有,也没有。

触发Redirect::back()时,会向服务器发送新的HTTP请求。由于HTTP是无状态的,Laravel会将旧输入闪烁到会话处理程序,并通过Input::old()函数使其可用。然后,Laravel使用此信息预先填充表单和文本字段。

出于安全原因,您无法预先填充文件字段,否则服务器可以设置它想要尝试的任何值,并强制您从计算机上传任何文件!

根据您的需要,您可以自己存储文件,并使用Redirect::back()->with('file_location', '...')发回文件的位置。您无法在物理上预填充文件输入,但是当用户重定向回来让他们知道他们不需要重新上传时,您可以向用户展示一些内容。文件,除非他们想要。