Â
Jika anda ingin membangun sebuah website atau aplikasi semacam toko online, salah satu fitur yang hampir pasti ada yaitu shopping cart atau keranjang belanja. Nyatanya  membuat sebuah fitur shopping cart tidaklah begitu sulit, terlebih jika anda menggunakan  framework CodeIgniter. CodeIgniter telah menyediakan suatu library/pustaka untuk mempermudah anda membuat shopping cart.
Library cart membutuhkan library session, tetapi kita tidak perlu meload library tersebut secara manual. Untuk menggunakannya anda bisa memanggil dengan library loader atau menambahkannya di konfigurasi autoload seperti :
$this->load->library('cart');
Penggunaannya juga tidak sulit, untuk menambah item di cart kita bisa menggunakan fungsi insert
seperti berikut ini
$data = array(
 'id' => 'A01',
 'qty' => 1,
 'price' => 39.95,
 'name' => 'T-Shirt',
 'options' => array('Size' => 'L', 'Color' => 'Red')
 );
$this->cart->insert($data);
Untuk studi kasus ini, kita akan mengkombinasikannya dengan pemilihan produk dimana produk-produk tersebut telah disimpan didalam database. Adapun langkah-langkah yang dilakukan adalah
Â
1. Membuat Database Produk
Ketika kita menggunakan shopping chart tentunya akan ada produk yang akan kita jual. Kita
akan mengunakan produk yang sangat sederhana. Pada contoh studi kasus kali ini.,sebuah produk
hanya memiliki Id, nama produk dan harga.
Setelah kita selesai membuat database produk langsung saja kita meng-insert table produk tersebut dengan manual terlebih dahulu
Jika kalian tidak mengetahui cara insert di mana saya sudah bulatkan di atas yang berwarna merah. Nah kalian tinggal klik saja menu tersebut dan nanti nya kalian akan masuk ke halaman tersebut dan kalian tinggal klik button go yang saya bulatkan dengan warna hitam.
Â
Â
2. Mengkonfigurasi CodeIgniter
Kita harus mengkonfigurasi codeigniter terutama di bagian database karena kita akan
menggunakan database pada aplikasi ini. Oleh karena itu kita harus mengubah file application
/configs/database.php
$db['default']['hostname'] = "localhost";
$db['default']['username'] = "root";Â //default jika menggunakan xampp
$db['default']['password'] = "";
$db['default']['database'] = "nama_database ";
$db['default']['dbdriver'] = "mysql";
Selain konfigurasi database kita juga mengset konfigurasi base_url di
application/configs/config.php
$config['base_url'] = "http://localhost/nama_file/";
Â
Â
3. Membuat Model Produk
Model product mempunyai 2 fungsi yaitu untuk mengambil seluruh data barang, dan fungsi untuk
mengambil data barang tertentu sesuai dengan id yang diinginkan.
Application/models/Product_model.php
Model ini hanya digunakan untuk menampilkan infomasi produk yang dijual.
Â
Â
4. Membuat Controller Produk dan Cart
Setelah membuat model maka kita akan membuat dua buah controller yang akan menghandle
penampilan produk dan keranjang belanja. Adapun controller pertama adalah controller produk.
Controller ini akan menampilkan semua produk yang ada didalam database.
Application/controller/Produk.php
Kita dapat memilih produk-produk tadi, lalu memasukkannya kedalam keranjang belanja. Setelah
itu maka kita harus mempunyai controller lain untuk menghandle keranjang belanja. Ada tiga
fungsi utama pada kelas ini yaitu menampilkan, menambah serta merubah keranjang belanja.
Untuk menghapus tinggal mengisikan jumlah barang yang dibeli sebanyak 0. Adapun isi dari
controller tersebut adalah :
application/controller/Cart.php
Perhatikan baris 17-21, disana kita akan memasukkan data produk. Adapun field-field data product
yang dapat dimasukaan kedalam library cart adalah:
• id – Setiap produk harus memiliki Id yang unik antara satu dan yang lain.
• qty – Jumlah barang yang akan dibeli
• price – Harga dari produk
• name – Nama produk
• options – informasi tambahan mengenai produk yang ingin dibeli
Untuk memasukkan data cart anda dapat menggunakan fungsi insert - $this->cart->insert($data);
data cart tersebut akan disimpan didalam session codeigniter. Jadi library cart ini membutuhkan
depedency library session.
Â
5. Membuat View Shopping Cart
Part terakhir adalah membuat view. Anda harus menyediakan dua buah view yaitu view data barang atau data produk dan view daftar keranjang belanja. Adapun ini view dari daftar produk adalah:
application/views/daftar_produk.php
Adapun tampilan dari view diatas adalah sebagai berikut
Ketika user mengklik link beli pada list produk maka user akan di redirect ke halaman add item ke
shoping cart. Adapun view yang digunakan untuk melihat daftar shopping cart adalah
application/views/daftar_shopping_cart.php
Perhatikan baris 11, fungsi $this->cart->contents() digunakan untuk mendapatkan seluruh data
cart yang telah disimpan di session. Semua item tadi akan kita simpan juga dalam sebuah inputan
yang bersifat hidden sehingga memudahkan kita dalam proses update cart. Selain itu library cart
juga sudah dilengkapi dengan fungsi untuk menampilkan jumlah belanja yang telah dilakukan
dengan fungsi $this->cart->total();
Adapun tampilan dari view diatas adalah gambar berikut ini:
Â
Pada gambar diatas kita telah berhasil membuat shopping cart atau keranjang sederhana serta kita dapat mengubah jumlah barang yang dipesan. Subtotal dan total akan otomatis ditambahkan oleh library cart dan akan muncul di sisi sebelah kanan