Blog Request tutorial? klik disini!

  • Membuat Shopping Cart Di Laravel 4

    Ditulis oleh: Arya Febiyan
    1807 kali dibaca
    06 Oct / 2014 08:03

    Apakah Anda ingin membangun usaha Toko Online dengan wordpress? Sudah merencanakan sampai infrastruktur keamanan? Saatnya Anda membuat Toko Online Anda dengan sebuah Framework yang saat ini sedang naik daun.

    Pembahasan materi artikel ini Saya fokuskan pada Cart saja. Bagi Anda yang ingin jago menjadi programmer Framework Laravel, bisa kursus di DUMET School.

    Saya perlihatkan dulu hasil jadinya yah :

    Membuat Shopping Cart Di Laravel 4

    Membuat Shopping Cart Di Laravel 4

    Berikut adalah baris program Controller :

    class CartController extends BaseController
    {
        public function add($id)
        {
            $row = Product::find($id);
         
            if ($row->count() > 0) {
                Cart::add($id, $row->product_name, 1, $row->price, array());
                return Redirect::to('basket');
            } else {
                return Redirect::to('/');
            }
    
        }
    
        public function basket()
        {
            if (Cart::count() == 0) {
                return Redirect::to('/');       
            } else {
                return View::make('cart.basket')
                           ->with('title', 'Cart → Basket');
            }
        }
    
        public function checkout()
        {
            if (Cart::count() == 0) {
                return Redirect::to('/');       
            } else {
                return View::make('cart.checkout')
                           ->with('title', 'Cart → Checkout');
            }
        }
    
        public function remove($rowid)
        {
            Cart::remove($rowid);
            return Redirect::to('basket');
        }
    
        public function destroy()
        {
            Cart::destroy();
            return Redirect::to('/');
        }
    
        public function update()
        {
            $quantity = Input::get('quantity');
            $rowid = Input::get('rowid');
    
            for ($i=0; $i<count($rowid); $i++) {
                Cart::update($rowid[$i], array('qty' => $quantity[$i]));
            }
    
            return Redirect::to('basket');
        }
    
    }

    Berikut adalah baris program Views :

    @extends('layouts.template')
    
    @section('content')
    
    <div class="row">
        <div class="col-lg-12">
            <h3>Basket</h3>
        </div>
    </div>
    
    <div class="row text-center">
        <div class="col-lg-12">
            <form action="{{ URL::to('update-basket') }}" method="post">
                <table class="table table-hover">
                    <tr>
                        <th class="text-left">Product</th>
                        <th class="text-right">Quantity</th>
                        <th class="text-right">Price</th>
                        <th class="text-right">Subtotal</th>
                        <th class="text-right">Remove</th>
                    </tr>
                   
                    @foreach (Cart::content() as $data)  
                        <tr>
                            <td class="text-left">
                                <a href="{{ URL::to('product-detail/'.$data->id) }}" class="btn btn-default">
                                    {{ $data->name }}
                                </a>
                            </td>
                            <td class="text-right">
                                <input type="number" name="quantity[]" value="{{ $data->qty }}" size="3" min="1" max="999" />
                                <input type="hidden" name="rowid[]" value="{{ $data->rowid }}" />
                            </td>
                            <td class="text-right">{{ number_format($data->price,0,'.','.') }}</td>
                            <td class="text-right">{{ number_format($data->subtotal,0,'.','.') }}</td>
                            <td class="text-right">
                                <a href="{{ URL::to('remove/'.$data->rowid) }}" class="btn btn-danger btn-xs">
                                    <span class="glyphicon glyphicon-trash"></span>
                                    Delete
                                </a>
                            </td>
                        </tr>   
                    @endforeach
                   
                    <tr>
                        <th class="text-left"></th>
                        <th class="text-right">{{ number_format(Cart::count(),0,'.','.') }}</th>
                        <th class="text-right">&nbsp;</th>
                        <th class="text-right">{{ number_format(Cart::total(),0,'.','.') }}</th>
                        <th class="text-right">&nbsp;</th>
                    </tr>
                   
                    <tr>
                        <th class="text-right" colspan="2">
                            <button type="submit" name="update" class="btn btn-xs btn-primary">
                                <span class="glyphicon glyphicon-pencil"></span> Update All Quantity
                            </button>
                        </th>
                        <th class="text-right" colspan="3">
                            <a href="{{ URL::to('/') }}" class="btn btn-warning btn-xs">
                                <span class="glyphicon glyphicon-chevron-left"></span> Back to Shop
                            </a>
                            <a href="{{ URL::to('remove-all-cart') }}" class="btn btn-danger btn-xs">
                                <span class="glyphicon glyphicon-trash"></span> Remove All Data
                            </a>
                            <a href="{{ URL::to('checkout') }}" class="btn btn-success btn-xs">
                                Checkout <span class="glyphicon glyphicon-chevron-right"></span>
                            </a>
                        </th>
                    </tr>
                </table>
            </form>
        </div>
    </div>
    
    @stop

    Semoga bermanfaat bagi yang ingin mempelajari Laravel.






Baca juga

Rukan Artha Gading Niaga Blok i - 23, Jalan Boulevard Artha Gading

Kelapa Gading, Jakarta Utara 14240

(Belakang Mall Artha Gading)

Telp: (021) 4585-0387


Ruko Permata Regensi Blok B - 18, Jalan Haji Kelik

Srengseng, Kebon Jeruk, Jakarta Barat 11630

(Depan Hutan Kota Srengseng)

Telp: (021) 5890-8355


Ruko Jalan Taman Daan Mogot Raya No. 23

Kel. Tanjung Duren Utara Kec. Grogol Petamburan, Jakarta Barat 11470

(Belakang Mall Citraland dan Kampus UNTAR II)

Telp: (021) 2941-1188


Ruko Jalan Kartini Raya No. 53

Pancoran Mas, Depok 16436

(± 5 Menit dari Kantor Walikota Depok)

Telp: (021) 7720-7657


Rukan Crown Palace Blok A no 12, Jl Prof Dr Soepomo no 231 (Samping Universitas Sahid).

Kec. Tebet, Kel. Menteng Dalam.

(± 1 Menit dari Tugu Pancoran)

Jakarta Selatan 12870

Telp: (021) 2298-3886

Buka setiap hari Senin - Minggu jam 09.00 s/d 21.00

SMS: 0851-0055-5666 / 0819-7555-666 / 0812-9933-3913 / 0812-9393-3210 / 0812-1999-9155