如何显示非身份验证用户数据或心愿单

时间:2017-04-25 06:21:04

标签: php laravel laravel-5

我已经为购物车创建了一个愿望清单。所以当非认证用户想要在他添加到心愿单后看到他的愿望清单时。如何在登录前根据他显示愿望清单?

这是我仅为认证用户制作的愿望清单:

public function addWish(Request $request)
    {
        if(Auth::check()){
            $name = $request->name; 
            $product = Product::where('name' , '=', $name)->first();
            $product_id = $product->id;
            $product = DB::table('wishes')           
                ->where('wishes.product_id','=',$product_id)
                ->where('wishes.status','=',1)
                ->select('wishes.product_id')
                ->first();

                if(!$product){
                    $wish = new Wish();
                    $wish->user_id =Auth::user()->id;
                    $name = $request->name; 
                    $product = Product::where('name' , '=', $name)->first();
                    $wish->product_id = $product->id;
        //          $product = Product::find($cart->product_id);
                    $wish->price =$product->price;  
                    $wish->status = 1;  
                    $wish->save();
                        return redirect('shop-wish');
                }
            else{
                return redirect('shop-wish');   
            }

        }

这一个用于显示列表:

public function getWishPage()
    {
        $id = Auth::user()->id;
        $wishList = \DB::table('wishes')
                    ->join('products','wishes.product_id','products.id')
                    ->select('products.feature_image','products.name','products.price as p_price','wishes.id')
                ->where('wishes.status','=',1)
                ->where('wishes.user_id','=',$id)   
                ->get();
            return view('cart.wishlist',compact('wishList'));
    }

但是,我如何展示非验证用户心愿单?任何建议或解决方案都会有意义吗?

1 个答案:

答案 0 :(得分:0)

public function addWish(Request $request)
{
    if (Auth::check()){
        // ...
    } else {
        $name = $request->name; 
        $product = Product::where('name' , '=', $name)->first();
        $product_id = $product->id;
        if (\Session::has("wishList.$product_id") === true) {
            return redirect('shop-wish');   
        }
        \Session::put("wishList.$product_id", $product_id);
        return redirect('shop-wish');   
    }
}

public function getWishPage()
{
    if (Auth::check()) {
        $wishListId = \Session::get('wishList');
        dd($wishListId);
    } else {
        $id = Auth::user()->id;
        $wishList = \DB::table('wishes')
            ->join('products','wishes.product_id','products.id')
            ->select('products.feature_image','products.name','products.price as p_price','wishes.id')
            ->where('wishes.status','=',1)
            ->where('wishes.user_id','=',$id)   
            ->get();
        return view('cart.wishlist',compact('wishList'));
    }
}