0
我想插入具有相同输入“名称”的数据。 例如在Laravel中插入大量数据
{!! Form::open(['action' => '[email protected]', 'method' => 'POST', 'enctype' => 'multipart/form-data']) !!}
<input type="text" class="form-control" name="name[]" placeholder="Name">
<input type="file" class="form-control-file" name="img[]">
<input type="text" class="form-control" name="name[]" placeholder="Name">
<input type="file" class="form-control-file" name="img[]">
<button type="submit" class="btn btn-primary">Save</button>
{!! Form::close() !!}
我希望得到以下结果
ID|page_id|name|img
1 |15 |1 |file1.jpg
2 |15 |2 |file2.jpg
3 |15 |3 |file3.jpg
控制器
public function store(Request $request)
{
if($request->hasFile('img')){
$fileNameExt = $request->file('img')->getClientOriginalName();
$fileName = pathinfo($fileNameExt, PATHINFO_FILENAME);
$fileExt = $request->file('img')->getClientOriginalExtension();
$fileNameToStore = $fileName.'_'.time().'.'.$fileExt;
$pathToStore = $request->file('img')->storeAs('public/images',$fileNameToStore);
}
$info = new Info;
$info->name = $request->input('Name');
$info->img = $fileNameToStore;
$info->page_id = $page->id;
$info->save();
}
BTW我做了一些测试,和我自己的价值观,如果我使用甚至不回
name =“img []”
,但如果我用下面的代码它的工作原理,但只返回最后的输入数据
NAME = “IMG”
$info = new Info;
$name = $info ->name = $request->input('name');
$img = $info ->img = $fileNameToStore;
$id = $baninfo er->company_id = $company->id;
return $reqs = [$name,$img,$id];
将返回以下代码
[["name 1","name 2"],"123_1504558228.jpg",133]
但我期待得到2图像instea d的最后输入img ... 任何提示如何插入这样的数据?
感谢的答案,它可能会帮助我。 在这一刻提交后的形式一切正常,但它不会将数据保存到DB 编辑:我测试了dd($ request-> get('img'));并返回NULL – myJuune
嗨myJuune,我的迟到的回应道歉。我很好奇你是否已经找到解决问题的办法?也许你可以邀请我在Github上合作,以便我可以帮助你?如果你需要解决方案的另一个答案,我也可以发布一个新的答案。 (我的设置可能与您的设置有所不同,但我不认为问题在于您的设置) – cojoy