2017-11-19 6 views
0

Ich mache ein Online-Shopping-Projekt mit Laravel, aber es gibt ein Problem, wenn ich nichts in den Warenkorb gelegt habe (vor dem Einlegen und Entfernen von Artikeln aus dem Warenkorb) :Laravel Einkaufswagen - Überprüfen, ob Sitzungsgruppe leer ist

Example #1

cart.blade.php:

@if(!Session::has('cart')) 
<div class="container" style="margin-top: 25px;width: 40%;"> 
    <div class="container-fluid"> 
     <div class="panel panel-default"> 
      <div class="panel-body"> 
       <center> 
        <h4>Your shopping cart is empty :|</h4> 
        <a href="{{ route('index') }}">back to the homepage</a> 
       </center> 
      </div> 
     </div> 
    </div> 
</div> 
@else 
........... 
@endif 

Nachdem ich in den Warenkorb legen, dann entferne ich die Ware bis der Wagen leer ist.

Example #2

wie diese (nach dem Einlegen und Artikel aus dem Warenkorb zu entfernen, wird diese Tabelle nicht gelöscht):

Example #3

Sollte wie sein diese "Ihr Warenkorb ist leer."

StoreController.php:

[] 
für die Beantwortung meiner Frage

Danke:

<?php 

........... ... 
... .. . . ... 
public function Cart() 
{ 
    $interest = Products::OrderByRaw('RAND()')->take(2)->get(); 

    return view('shop.cart', compact('interest')); 
} 

..... ..... 
... .. .. 
public function deleteCart($id) 
{ 
    $cart = Session::get('cart'); 
    unset($cart[$id]); 
    Session::put('cart', $cart); 
    Session::flash('success', 'item has been removed.'); 

    return redirect()->back(); 
} 

Das Array nach dem Artikel wird die Verwendung dd($cart) gelöscht! :)

+0

Ich löschte "Gelöst" aus dem Titel. Entweder eine Antwort akzeptieren oder den Beitrag löschen. –

Antwort

0

in was auch immer Ihre Blade-Datei Sitzung Warenkorb Daten zum Rendern Sie haben etwas, was zu tun dies wie

@if(count($cart) > 0) 
    <div> whatever your message is like shopping cart is empty </div> 
@else 
    //loop the session cart array and display it 
    @foreach($c as $cart) 
      <p> {{ $c }} </p> 
    @endforeach 
@endif 
+0

Dank für Ihre Antwort, dieses Problem durch Ändern '@if (! Session :: hat ('Warenkorb')) gelöst wurde' TO '@if (! Session :: hat ('Warenkorb') || leer (Sitzung :: get ('cart'))) ' –

0

wurde dieses Problem durch

@if (! Session :: has ('cart')) 

TO

Ändern gelöst
@if (! Session :: has ('cart') || empty (Session :: get ('cart')))