<div class="nieuws2">
@foreach($product as $product)
<div class="nieuwsber bericht{{$product->id}}">
<h2>{{$product->name}}</h2>
<img src="{{$product->image}}">
<span>€{{$product->price}}</span>
</div>
@endforeach
</div>
<form class="saleform" method="post" action="sale">
<h2>Plaats je bestelling</h2>
@csrf
<label for="name">Naam (voornaam + achternaam)</label><br>
<input type="text" id="name" name="name"><br><br>
<label for="adres">adres (straat + nr + postcode + gemeente)</label><br>
<input type="text" id="adres" name="adres"><br><br>
@foreach ($product as $product)
<label for="{{$product->name}}">{{$product->name}}</label><br>
<input type="number" id="{{$product->name}}" name="{{$product->name}}" value="0"><br><br>
<input type="hidden" id="price" name="price" value="{{$product->price}}">
@endforeach
<input type="submit">
</form>
第一个@foreach工作得很好,它做了它需要做的。但后来我试着在同一个刀片文件中再做一次,由于某种原因它不起作用。它应该做的是遍历每个产品并将其作为一个数字输入,以便客户可以在其订单中添加x-amount。
我的控制器是这样的:
public function index(){
$product = product::get();
return view ('pages.verkoop', [
'product' => $product
]);
通过让循环名称为变量$product
(foreach ($product as $product)
)来覆盖$product
的值。对于要迭代的内容,应该使用不同的变量名,对于要执行的操作,应该使用循环的当前值:
foreach ($products as $product)
将集合重命名为$products
将是一个简单的修复。现在,通过让循环设置$product
变量,您不会覆盖$products
。
好的,显然您不能在一个blade文件中对同一个对象进行两次foreach循环。我通过将控制器更改为
来修复它public function index(){
$product = product::get();
$product2 = product::get();
return view ('pages.verkoop', [
'product' => $product,
'product2' => $product2,
]);
}
并将blade.php更改为:
<div class="nieuws2">
@foreach($product as $product)
<div class="nieuwsber bericht{{$product->id}}">
<h2>{{$product->name}}</h2>
<img src="{{$product->image}}">
<span>€{{$product->price}}</span>
</div>
@endforeach
</div>
<form class="saleform" method="post" action="sale">
<h2>Plaats je bestelling</h2>
@csrf
<label for="name">Naam (voornaam + achternaam)</label><br>
<input type="text" id="name" name="name"><br><br>
<label for="adres">adres (straat + nr + postcode + gemeente)</label><br>
<input type="text" id="adres" name="adres"><br><br>
@foreach ($product2 as $product2)
<label for="{{$product2->name}}">{{$product2->name}}</label><br>
<input type="number" id="{{$product2->name}}" name="{{$product2->name}}" value="0"><br><br>
<input type="hidden" id="price" name="price" value="{{$product2->price}}">
@endforeach
<input type="submit">
</form>
所以这是一件奇怪的事。有人知道为什么吗?