Laravel提交数据时出现错误未定义索引:

时间:2019-07-08 16:12:09

标签: php laravel

我试图通过将产品添加到购物车来将数据添加到购物车表中,但出现上述错误Undefined index:size

责任控制者的代码

 public function addToCart(Request $request){
        Session::forget('CouponAmount');
        Session::forget('CouponCode');
        $data = $request->all();

        if(empty($data['user_email'])){
            $data['user_email']='';
        }
        $session_id= Session::get('session_id');
        if(empty($session_id)){
            $session_id = str_random(40);
            Session::put('session_id', $session_id);
        }

        $sizeArr=explode("-",$data['size']);

        $countProducts = DB::table('cart')- 
        >where(['product_id'=>$data['product_id'], 
        'product_color'=>$data['product_color'],
        'size'=>$sizeArr[1], 'session_id'=>$session_id,])->count();

        if($countProducts>0){
            return redirect()->back()->with('flash_message_error', 'Exact 
            product already exists in Cart!');

        }else {
            $getSKU = ProductsAttribute::select('sku')- 
            >where(['product_id'=>$data['product_id'], 'size'=>$sizeArr[1]])- 
            >first();

            DB::table('cart')->insert(['product_id'=>$data['product_id'], 
            'product_name'=>$data['product_name'], 
            'product_code'=>$getSKU->sku, 
            'product_color'=>$data['product_color'], 'price'=>$data['price'],
            'size'=>$sizeArr[1], 'quantity'=>$data['quantity'], 
            'user_email'=>$data['user_email'], 'session_id'=>$session_id,]);
        }

        return redirect('cart')->with('flash_message_success', 'Product has 
        been added to cart!');
    }

输入大小的刀片文件

              <h1>{{ $productDetails->product_name }}</h1>
                        <p>{{ $productDetails->description }}</p>
                         <div class="dropdown_top">
                            <div class="dropdown_left">
                             <select id="size" class="dropdown" tabindex="10" 
                              data-settings='{"wrapperClass":"metro1"}'>
                                <option value="0">Select size</option>  
                                @foreach ($productDetails->attributes as 
                                $sizes)
                                    <option value="{{ $productDetails->id }}- 
                                     {{ $sizes->size }}">{{ $sizes->size }} 
                                    </option>
                                @endforeach
                             </select>
                            </div>

而不是重定向到我的购物车页面,我得到的是Undefined index:size

1 个答案:

答案 0 :(得分:0)

我在评论中添加了此内容,但以为我会雄辩:)

$request->all()调用未返回'size',因为模板中name标记中缺少<select>属性。以下应解决此问题:

<select name="size" id="size" class="dropdown" tabindex="10" data-settings='{"wrapperClass":"metro1"}'>

相关问题