如何解决如何在laravel会话中增加产品数量
我的购物车会话是
Array
(
[0] => Array
(
[id] => 123-XXL
[prod_name] => Grey Shirt
[prod_rate] => 2100
[size] => XXL
[qty] => 1
[ind_tot] => 2100
)
[1] => Array
(
[id] => 134-XL
[prod_name] => red_shirt
[prod_rate] => 1800
[size] => XL
[qty] => 1
[ind_tot] => 1800
)
)
现在,我尝试将会话的 qty 值增加1,
我的增量函数是
public function increment(Request $request){
$id = $request->id;
$rate = $request->rate;
$qty = $request->qty;
$ind_tot = $request->ind_tot;
$input = $request->all();
$qty_up = $qty+1;
$ind_tot = $ind_tot+$rate;
if(Session::has('cart_sess')){
$cart = Session::get('cart_sess');
foreach ($cart as $key => $value){
if($cart[$key]['id'] == $id){
$cart = $cart->replace([$cart[$key]['qty'] => $qty_up,$cart[$key]['ind_tot'] => $ind_tot]);
Session::set('cart_sess',$cart);
}
}
}
return response()->json($qty_up,200);
}
当我进行控制台操作时,错误显示为
500 (Internal Server Error)
如何更新laravel会话数组中的值。
解决方法
您可以这样做
public function increment(Request $request){
$id = $request->id;
$rate = $request->rate;
$qty = $request->qty;
$ind_tot = $request->ind_tot;
$input = $request->all();
$qty_up = $qty+1;
$ind_tot = $ind_tot+$rate;
if($request->session()->has('cart_sess')){
$cart = $request->session()->get('cart_sess');
foreach ($cart as $key => $value){
if($cart[$key]['id'] == $id){
$value['qty'] = $qty_up;
$value['ind_tot'] = $ind_tot;
}
}
}
$request->session()->put('cart_sess',$cart);
return response()->json($qty_up,200);
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。