Php 如何解决;“文件不存在或不可读”;在laravel中,图像已上载到文件夹中
我在尝试上载文件时遇到此错误,但文件正在上载,因为我可以在目录中找到它!但是它没有继续,而是抛出了这个错误,我一直在使用这个脚本,直到Php 如何解决;“文件不存在或不可读”;在laravel中,图像已上载到文件夹中,php,html,laravel,Php,Html,Laravel,我在尝试上载文件时遇到此错误,但文件正在上载,因为我可以在目录中找到它!但是它没有继续,而是抛出了这个错误,我一直在使用这个脚本,直到Laravel6.0,我不知道为什么! 谢谢 这是我的Html代码 <div class="custom-file"> <input type="file" class="custom-file-input form-control " id="customFileLang" name="photo" > <label
Laravel6.0
,我不知道为什么!
谢谢
这是我的Html代码
<div class="custom-file">
<input type="file" class="custom-file-input form-control " id="customFileLang" name="photo" >
<label class="custom-file-label" for="customFileLang">Choose Picture </label>
</div>
@error("photo")
<p style="color:red;" class="mx-4">{{ $message }}</p>
@enderror
```
选择图片
@错误(“照片”)
{{{$message}
@恩德罗
```
С检查调用$validator->fails()
是否发生一次
在我的例子中,在我的控制器操作中,在选中删除文件后,第一次调用
$validator->fails()
。第二次调用找不到此文件。如果文件已成功上载,则问题出在其他地方,但不幸的是,此错误表示非常混乱,不是实际错误。实际错误发生在将数据插入数据库的地方,在您的情况下,是这样一行:
DB::table('post')->insert($data); // the case in this question
在我的例子中,有一行我想在数据库中插入一个博客:
Blog::create($data); // my case
为了找出真正的错误是什么,您必须使用try-and-catch
try {
DB::table('post')->insert($data); // for my case : Blog::create($data);
} catch (\Exception $e) {
dd($e);
}
当您转储并死亡$e
时,您将看到实际错误:
对我来说,在我的例子中,实际的错误是:“字段‘author_type’没有默认值”,但由于一些未知原因,当您在表单中上载数据时,laravel 6.0显示“文件不存在或不可读错误”。如果其他人遇到此错误,尝试检查你的php.ini…确保你的上传文件大小和你的帖子大小一样大。我有1000米的贴子最大尺寸,但只有100米的上传最大尺寸。上传会持续很长时间,然后抛出上面的错误(除了文件名为“”,没有上传任何文件)。运行PHP的Web服务器有权将数据存储在
/tmp
-文件夹中吗?是的,因为在另一个项目中,我让它工作@请给出您的html代码also@TanvirAhmed,我添加了它们。
try {
DB::table('post')->insert($data); // for my case : Blog::create($data);
} catch (\Exception $e) {
dd($e);
}