//controller function
public function storeBaritems()
{
$id = Auth::user()->id;
$bartypearray = array();
$bartypes = request('select1'); // <select id="select1" name="select1[]"
$r = 0;
foreach ($bartypes as $type) {
$bartypearray[$r] = Bartype::select('bartype_id')
->where('bar_type_name','like',$type)
->where('restaurant_id','like',$id)
->get();
$r += 1;
}
$baritems = request('itemname'); //<input type="text" class="hookah-field" name="itemname[]">
$descriptions = request('description'); //<input type="text" class="hookah-field" name="description[]">
$quantity = request('quantity'); //<input type="text" class="hookah-field" name="quantity[]">
$prices = request('price'); //<input type="text" class="hookah-field" name="price[]">
$i = 0;
foreach ($baritems as $item) {
Bar_menu::create([
'item_name'=>$item,
'description'=>$descriptions[$i],
'quantity'=>$quantity[$i],
'price'=>$prices[$i],
'res_id'=>$id,
'type_id'=>$bartypearray[$i]
]);
$i += 1;
}
}
HTML是动态表单,它生成具有相同&#34; name&#34;的新输入字段。属性。从路由调用函数后,我收到此错误,如截图 error screenshot
我认为问题在于在bartypearray[]
中插入数据。任何解决方案?
答案 0 :(得分:0)
在您的第一个foreach循环中,当您尝试使用数据填充$ bartypearray时,实际上是使用对象数组填充它。这就是为什么你得到一个&#39; []&#39;作为输入而不是整数。
我建议你做的是在第二个foreach循环中访问bartypeid,如下所示: &#39; type_id&#39; = $ bartypearray [$ i] - &gt; bartypeid;
我认为它应该有效..