本文介绍了laravel 5.4 上传图片的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我在 laravel 5.4 中上传文件的控制器代码:
if ($request->hasFile('input_img')) {if($request->file('input_img')->isValid()) {尝试 {$file = $request->file('input_img');$name = rand(11111, 99999) .'.'.$file->getClientOriginalExtension();$request->file('input_img')->move("fotoupload", $name);} catch (IlluminateFilesystemFileNotFoundException $e) {}}}
图片上传成功但代码抛出异常:
<块引用>MimeTypeGuesser.php 第 123 行中的 FileNotFoundException
文件是我的代码有问题还是laravel 5.4的bug,谁能帮我解决问题?
我的查看代码:
</表单>
解决方案
试试这个代码.这将解决您的问题.
public function fileUpload(Request $request) {$this->validate($request, ['input_img' =>'必需|图像| mimes:jpeg,png,jpg,gif,svg|max:2048',]);if ($request->hasFile('input_img')) {$image = $request->file('input_img');$name = time().'.'.$image->getClientOriginalExtension();$destinationPath = public_path('/images');$image->move($destinationPath, $name);$this->save();return back()->with('success','图片上传成功');}}
My controller code for upload file in laravel 5.4:
if ($request->hasFile('input_img')) {
if($request->file('input_img')->isValid()) {
try {
$file = $request->file('input_img');
$name = rand(11111, 99999) . '.' . $file->getClientOriginalExtension();
$request->file('input_img')->move("fotoupload", $name);
} catch (IlluminateFilesystemFileNotFoundException $e) {
}
}
}
Image was successfully uploaded but the code threw an exception :
FileNotFoundException in MimeTypeGuesser.php line 123
The file is there any fault in my code or is it a bug in laravel 5.4, can anyone help me solve the problem ?
My view code:
<form enctype="multipart/form-data" method="post" action="{{url('admin/post/insert')}}">
{{ csrf_field() }}
<div class="form-group">
<label for="imageInput">File input</label>
<input data-preview="#preview" name="input_img" type="file" id="imageInput">
<img class="col-sm-6" id="preview" src="">
<p class="help-block">Example block-level help text here.</p>
</div>
<div class="form-group">
<label for="">submit</label>
<input class="form-control" type="submit">
</div>
</form>
解决方案
Try this code. This will solve your problem.
public function fileUpload(Request $request) {
$this->validate($request, [
'input_img' => 'required|image|mimes:jpeg,png,jpg,gif,svg|max:2048',
]);
if ($request->hasFile('input_img')) {
$image = $request->file('input_img');
$name = time().'.'.$image->getClientOriginalExtension();
$destinationPath = public_path('/images');
$image->move($destinationPath, $name);
$this->save();
return back()->with('success','Image Upload successfully');
}
}
这篇关于laravel 5.4 上传图片的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!