Xóa sản phẩm trong giỏ hàng javascript
Code xử lý giỏ hàng để thực hiện các chức năng liên quan đến mua hàng của khách. Như chọn, thêm, xóa sản phẩm, lưu đơn hàng vào database…. Show
A. Tổ chức database để lưu đơn hàngBạn sẽ cần ít nhất hai table trong database để lưu thông tin: -Table thứ nhất lưu thông tin đơn hàng, đặt tên donhang luôn nhé. Table sẽ gồm ít nhất các column như sau: – Table thứ hai dùng để lưu chi tiết các đơn hàng, tức lưu các sản phẩm mua trong các đơn hàng B. Thực hiện chức năng hiện giỏ hàngGiỏ hàng là nơi hiện thông tin các sản phẩm user đã chọn để mua. Có nút Thanh toán, Tổng tiền, nút Bỏ sản phẩm (không mua nữa)… Tùy nhu cầu website, có khi tính thêm phí shipping, thuế VAT… 1. Route vào chức năng hiện giỏ hàngTrong file site/controllers/home.php, code để thêm chức năng hiện giỏ hàng: 2. Tạo view giỏ hàng1. Tạo site/views/cartview.php 3. Paste vào file cartview.php
Tham khảo kết quả nhé: Xem thử http://localhost/banhang/site/?act=cartview sẽ thấy card hiện ra, chữ canh giữa và padding trong card-body còn khá lớn. Chỉnh nữa nhé 5. Bổ sung p-0 vào div card-body và xóa text-center thay bằng col-10 m-auto (cho độ rộng nhỏ lại và canh giữa) cho đẹp 6. Thay chữ Số lượng thành code: (đọc code thử nhé)
7. Dùng bootstrap icon thay cho chữ Bỏ : – Ở đầu view cardview.php, nhúng bootstrap icon
– Xóa chữ Bỏ và thay bằng code (đọc code thử nhé)
(Xem hướng dẫn bootstrap icon tại : https://icons.getbootstrap.com/ ) Xem thử kết quả: 3. Hiện sản phẩm – Trong hàm cartview của controller home, khai báo biến session giohang như sau : ( Giả định user đã chọn ba sản phẩm có id là 1, 2 và 7) $_SESSION['giohang'] = [ 1 =>['TenDT'=>'OPPO A93','Amount'=>3, 'Gia'=>7300000], 2 => ['TenDT'=>'Vsmart Aris','Amount'=>4, 'Gia'=>6300000], 7 => ['TenDT'=>'Realme 7 Pro','Amount'=>5, 'Gia'=>8300000] ] ; – Trong views/cartview.php, lặp qua biến session giỏ hàng để hiện sản phẩm Xem kết quả: Mời bạn thực hiện: cho hiện STT tăng dần và định dạng tiền thành dạng tiền tệ như hình trên nhé, không làm thì thôi 🙂 C. Thực hiện hành động trên giỏ hàng: thêm, xóa…1.Thêm sản phẩm vào giỏ hàng– Trong site/controllers/home.php. code hàm cart function cart(){ //Tiếp nhậtn biến id (mã sản phẩm) và what (để biết thêm/xóa sp) $id = $_GET['id']; settype($id, "int"); $what ="add"; if(isset($_GET['what'])) $what = $_GET['what']; if ($what=="add"){ if (isset($_SESSION['giohang'])==false) $_SESSION['giohang']=[]; //tạo mảng rổng nếu chưa có $spFromDB = $this->model->detail($id); //if ($spFromDB==null) ... $spInCart = $_SESSION['giohang'][$id]; //['TenDT'=>'A','Amount'=>2] if ($spInCart!=null) $soluong=$spInCart['Amount']+1; else $soluong = 1; $_SESSION['giohang'][$id]=[ 'TenDT'=>$spFromDB['TenDT'], 'Gia'=>$spFromDB['Gia'], 'Amount' =>$soluong ]; echo " |