[英]laravel won't save multiple filename of image to database
所以这是我的父亲
$images = $request->file('image');
$file_count = count($images);
$uploadcount = 0;
$daily = new Report();
foreach($images as $image) {
$daily = new Report();
$destination ='img/report';
$filename = $image->getClientOriginalName();
storage::put('img/report/'.$filename,file_get_contents($image->getRealPath()));
$daily->image = $filename;
$uploadcount ++;
}
$daily->author = $request->author;
$daily->desc = $request->desc;
// $daily->created_at = Carbon::now();
$daily->save();
if($uploadcount == $file_count){
return redirect('/daily');
}else{
return redirect('/daily/create');
}
这是我的刀锋:
<form action="/daily/create" method="POST" enctype="multipart/form-data">
<input type="hidden" name="_token" value="{{{ csrf_token() }}}">
{{-- date --}}
{!! Form::text('date', old('date', Carbon\Carbon::today()->format('d-m-Y')),['class'=>'form-control date-picker']) !!}
{{-- penulis --}}
<label for="author">Author :</label>
<input name="author" type="text" value="{{ Auth::user()->name }}">
{{-- textarea --}}
<label for="desc">Description</label>
<textarea name="desc" id="" cols="30" rows="10"></textarea>
{{-- input image --}}
<div class="file-field input-field">
<div class="btn">
<span>File</span>
<input type="file" name="image[]" multiple>
</div>
<div class="file-path-wrapper">
<input class="file-path validate" type="text" placeholder="Upload one or more files">
</div>
</div>
<center>
<input type="submit" class="btn">
</center>
</form>
所有图像都已添加并保存到文件夹中,但是我只是得到了最后一个图像名称。.我读了这篇文章如何使用laravel php在表中保存多个图像很多次,但仍然不知道如何解决它hellppppppp ...
这里的问题很明显,您只能保存1个数据,因为您没有在foreach循环中保存每个new Report()
您所做的是在循环结束后保存它,这是唯一的保存数据是您在foreach循环中创建的最后一个new Report()
要解决该问题,请放置此代码
$daily->author = $request->author;
$daily->desc = $request->desc;
// $daily->created_at = Carbon::now();
$daily->save();
内部foreach循环
$images = $request->file('image');
$file_count = count($images);
$uploadcount = 0;
foreach($images as $image) {
$daily = new Report();
$destination ='img/report';
$filename = $image->getClientOriginalName();
storage::put('img/report/'.$filename,file_get_contents($image->getRealPath()));
$daily->image = $filename;
$uploadcount ++;
$daily->author = $request->author;
$daily->desc = $request->desc;
// $daily->created_at = Carbon::now();
$daily->save();
}
if($uploadcount == $file_count){
return redirect('/daily');
}else{
return redirect('/daily/create');
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.