基于所选数字的多个 Div (LARAVEL)

我的代码有问题。根据另一篇文章:(根据下拉菜单中选择的数字创建多个 Div)我对我的代码有一些想法,但我有一个问题。我想将创建的 div 中的所有输入插入到我的数据库中,但它只记录最后一个 div 的输入。这是我的控制器设置:


$generals= new Instance;


$generalsnames=implode("",$_POST['generalname']);


$generalstime=implode("",$_POST['generaltime']);


$generals->Name= $generalsnames;


$generals->Time= $generaltime;


$generals->save();

你能帮助我吗?谢谢你的建议


杨__羊羊
浏览 153回答 3
3回答

绝地无双

在您的 HTML(blade) 代码中,在您的字段名称上添加“[]”。因此,您的字段名称应如下所示:<input type="text" name="generalname[]"><input type="text" name="generaltime[]">代替<input type="text" name="generalname"><input type="text" name="generaltime">因为如果您没有为字段名称指定数组,则只有具有此类名称的附加 div 的最后一个值才会包含在您对路由的 POST 请求中。然后在您的控制器中:public function store(Request $request){&nbsp; &nbsp;$input = $request->all();&nbsp; &nbsp;//you might want to combine your arrays for easier saving&nbsp; &nbsp;$general_time = array_combine($input['generalname'], $input['generaltime']);&nbsp; &nbsp;//then you will use foreach statement to save all of your data&nbsp; &nbsp;foreach($general_time as $general => $time)&nbsp; &nbsp;{&nbsp; &nbsp; &nbsp; $generals = new Instance;&nbsp; &nbsp; &nbsp; $generals->Name = $general;&nbsp; &nbsp; &nbsp; $generals->Time = $time&nbsp; &nbsp; &nbsp; $generals->save();&nbsp; &nbsp;}}

一只名叫tom的猫

我让它工作了。我混合了@Jovs 和@rkg 的解决方案。几个 tweeks 并重新启动服务器后,我让它工作了。步骤如下:添加[]到名称标签中,在blade.php在控制器中,我放了@Jovs 的代码(在 for 语句中你错过了一个“'”)$input = $request->all();for($i=0; $i<count($input['generalname']); $i++){&nbsp; &nbsp;$generals= new Instance;&nbsp; &nbsp;$generals->Name= $input['generalname'][$i];&nbsp; &nbsp;$generals->Time= $input['generaltime'][$i];&nbsp; &nbsp;$generals->save();}我遇到了“数组到字符串转换”的问题。我真的什么都没碰。我刚刚重新启动了服务器,但后来我让它工作了。

30秒到达战场

你需要[]在你的刀片中,然后在你的控制器上这将是你的代码。$input = $request->all();for($i=0; $i<count($input['generalname']); $i++){&nbsp; &nbsp; $generals= new Instance;&nbsp; &nbsp; $generals->Name= $input['generalname'][$i];&nbsp; &nbsp; $generals->Time= $input['generaltime'][$i];&nbsp; &nbsp; $generals->save();}
打开App,查看更多内容
随时随地看视频慕课网APP