How to add instruction with product in Cart

This is a fully working Cart. It can add products and calculate the quantity and total price. but I want to take instructions from User and add it with the Products in Cart.

This is the body from where I am adding product to Cart.

<form action="">
@csrf
<input hidden name="products_id" id="products_id"> // It contains the product id
<input name="instructions" id="instructions"> // Section from where I need to send instructions with each product
<button type="submit" class="btn theme-btn">Add to cart</button>
</form>

This is the Controller:

public function getAddToCart(Request $request)
{
$products = Products::find($request->products_id);
$instructions = $request->input('instructions');
$oldCart = Session::has('cart') ? Session::get('cart') : null;
$cart = new Cart($oldCart);
$cart->add($products, $products->id, $instructions); // It is sending Product and it's Id in Cart Model

$request->session()->put('cart', $cart);

$oldCart = Session::get('cart');
$cart = new Cart($oldCart);
return redirect('/');
}

This is the Cart Modal:

public function add($item, $id, $instructions) {
$storedItem = ['qty' => 0, 'price' => $item->price, 'instructions' => $instructions, 'item' => $item];
if ($this->items) {
if (array_key_exists($id, $this->items)) {
$storedItem = $this->items[$id];
}
}
$storedItem['qty']++;
$storedItem['price'] = $item->price * $storedItem['qty'];
$storedItem['instructions'];
$this->items[$id] = $storedItem;
$this->totalQty++;
$this->totalPrice += $item->price;
}


from Newest questions tagged laravel-5 - Stack Overflow https://ift.tt/3kl95jY
via IFTTT

تعليقات

المشاركات الشائعة من هذه المدونة

I am unable to figure out how to create payment collection request, after a form has been submitted in laravel

laravel, mysql transaction not working after failed one time