Top Ad unit 728 × 90

Thư viện Cart trong Codeigniter

Chào các bạn!
Hôm nay chúng ta tiếp tục tìm hiểu về Codeigniter nhé và hôm nay mình sẽ cùng các bạn đi tìm hiểu về một thư viện khá hay trong Codeigniter đó chính là thư viện "Cart". Thư viện này giúp chúng ta tạo các trang web bán hàng có được tính năng thêm, sửa xóa các sản phẩm trong giỏ hàng một cách nhanh chóng không mất nhiều thời gian và công sức. Vậy để sử dụng nó cần phải làm gì?

Và sau đây mình sẽ cùng các bạn đi thực hiện một số công việc để có thể sử dụng nó!

Let's go!!!!!!!!!!!





Đầu tiên để sử dụng được thư viện này chúng ta cần thực hiện việc như các thư viện khác đó là phải load nó ra với cú pháp quen thuộc:

$this->load->library('cart');
Sau khi load được nó ra rồi thì chúng ta sẽ bước sang bước số 2 là cấu hình một số thông tin cho giỏ hàng (Cái này thì tùy các bạn cấu hình nhé!). Ở đây mình lấy ví dụ nên cấu hình đơn giản:

$config = array();
$config['id'] = 1;
$config['name'] = "gao-thai-hong-phu-hai-tui-5kg";//do trong cart không lưu tên tiếng việt có dấu!
$config['image'] = "product1.png";
$config['price'] = 10000;
// trong thư viện có một hàm giúp chúng ta lưu vào giỏ hàng
$this->cart->insert($config);
Trên đấy là hàm để các bạn insert sản phẩm vào giỏ hàng và câu hỏi đặt ra là giả sử người dùng không muốn mua số lượng là: 1 trên 1 sản phẩm  nữa mà muốn mua nhiều hơn thì sao????????

Căng nhỉ??? Liệu có cách nào không?

Trong thư viện hàm xử lý câu trả lời trên có luôn. Nếu không có thì mình đâu dám nói lên đâu đúng không các bạn!

Và để làm được việc đó các bạn thực hiện như sau:


 $carts = $this->cart->contents();//lấy thông tin giỏ hàng
$id = isset($_POST['rowid']) ? $_POST['rowid'] : false;
$number = isset($_POST['qty']) ? (int)$_POST['qty'] : false;
//lấy số lượng sản phẩm
// $total_qty = $this->input->post('qty_'.$row['id']);
//$total_qty = $number;
$data = array();
$data['rowid'] = $id;//cập nhất sản phẩm có rowid bằng $key
$data['qty'] = $number;
$this->cart->update($data);// hàm update trong thư viện

Trong từ dòng mình có comment lại để giải thích cho các bạn hiểu rồi đó! Và một trường hợp nữa đặt ra là vị khách đó có đặt nhầm một sản phẩm mà họ không muốn mua, vậy làm sao để họ có thể bỏ sản phẩm đó ra khỏi giỏ hàng????
Trong thư viện cũng có cách giúp chúng ta bỏ sản phẩm đó ra khỏi giỏ hàng luôn!

//lấy thông tin giỏ hàng
$carts = $this->cart->contents();
foreach ($carts as $key => $row)
{
if($row['id'] == $id)
{
//cập nhật qty = 0 là được
$data = array();
$data['rowid'] = $key;//cập nhất sản phẩm có rowid bằng $key
$data['qty'] = 0;
$this->cart->update($data);
}
}
Các bạn nhìn trong hàm trên các bạn thắc mắc tại sao xóa lại đi dùng hàm update đúng không? Mình sẽ giải thích cơ chế như sau: Việc thực hiện xóa một sản phẩm nào đó trong giỏ hàng thực chất là chúng ta đi cập nhật số lượng của sản phẩm đó về 0 là xong.

Cái cuối cùng mình muốn để cập đến đó là xóa toàn bộ sản phẩm có trong giỏ hàng
Để xóa được toàn bộ sản phẩm trong giỏ hàng ta dùng hàm như sau:

//xóa toàn bộ giỏ hàng
$this->cart->destroy();
Thư viện Cart trong Codeigniter Reviewed by Thế Giới Tri Thức on tháng 8 23, 2017 Rating: 5

Không có nhận xét nào:

All Rights Reserved by THẾ GIỚI TRI THỨC © 2018
Thiết kế bởi: THẾ GIỚI TRI THỨC

Biểu mẫu liên hệ

Tên

Email *

Thông báo *

Được tạo bởi Blogger.