Giới thiệu dự án
Thương mại điện tử (E-commerce) trong lĩnh vực bán lẻ thiết bị công nghệ (điện thoại thông minh, laptop, linh kiện điện tử) tại Việt Nam đang ghi nhận tốc độ tăng trưởng kép hàng năm (CAGR) vượt mức 20%. Tuy nhiên, phần lớn các cửa hàng kinh doanh vừa và nhỏ (SMEs) vẫn đối mặt với bài toán quản trị vận hành thủ công: ghi chép sổ sách rời rạc, sai lệch số lượng hàng tồn kho thực tế, khó khăn trong việc kiểm soát doanh thu định kỳ theo tháng/quý và thiếu kênh tiếp cận khách hàng trực tuyến chuyên nghiệp.
Vấn đề cốt lõi cần giải quyết là sự thiếu hụt một hệ thống quản lý bán hàng tập trung, có khả năng đồng bộ hóa tức thời giữa giao diện mua sắm của khách hàng (Storefront) và hệ thống quản trị nội bộ (Back-office), đồng thời tối ưu hóa chi phí đầu tư hạ tầng ban đầu.
Mục tiêu cụ thể của đồ án:
- Xây dựng website thương mại điện tử chuyên biệt cho ngành hàng thiết bị số với cấu trúc module phân tầng rõ ràng theo mô hình MVC (Model-View-Controller).
- Tự động hóa 100% quy trình đặt hàng, xử lý đơn hàng 5 trạng thái và cập nhật số lượng tồn kho theo thời gian thực (Real-time Inventory Tracking).
- Thiết lập hệ thống phân quyền quản trị 2 cấp độ (Role-Based Access Control - RBAC) nghiêm ngặt nhằm phân tách ranh giới thao tác giữa Người quản trị (Administrator) và Nhân viên vận hành (Staff).
- Tích hợp các module bổ trợ bán hàng: động cơ mã giảm giá (Coupon Engine), quản lý thùng rác (Soft-delete Pattern), hỗ trợ tương tác trực tuyến qua Facebook Graph API và gửi thông báo đơn hàng tự động qua giao thức SMTP.
Giải pháp lựa chọn là sử dụng ngôn ngữ PHP kết hợp cùng Framework CodeIgniter 3.x trên nền tảng cơ sở dữ liệu MySQL. CodeIgniter sở hữu footprint siêu nhẹ (~2MB), hiệu năng thực thi truy vấn cao, tương thích tốt với hầu hết các hạ tầng máy chủ chia sẻ (Shared Hosting) và cung cấp sẵn các thư viện bảo mật chống tấn công SQL Injection, XSS, CSRF.
Hệ thống hướng tới mục tiêu đạt thời gian phản hồi máy chủ (TTFB) dưới 150ms, thời gian tải trang trung bình dưới 1.2 giây và xử lý thông suốt hơn 38 kịch bản nghiệp vụ (Use Cases). Phạm vi đồ án tập trung vào mô hình bán lẻ B2C (Business-to-Consumer); các giao dịch trực tuyến hỗ trợ hình thức thanh toán khi nhận hàng (COD) và chuyển khoản, chưa tích hợp cổng thanh toán trực tiếp đa bên.
Phân tích và thiết kế giải pháp
Phân tích hiện trạng
Khảo sát các giải pháp quản lý bán hàng phổ biến trên thị trường cho thấy sự phân hóa rõ rệt giữa phương pháp thủ công và các nền tảng CMS mã nguồn mở cồng kềnh.
| Tiêu chí đánh giá |
Quản lý sổ sách / Excel |
Nền tảng CMS nặng (WooCommerce/Magento) |
Hệ thống tùy biến CodeIgniter 3 |
| Tốc độ tải trang & phản hồi |
Không áp dụng (Offline) |
Trung bình - Chậm (1.8s - 3.5s) |
Nhanh (< 1.2s, bộ nhớ chiếm dụng thấp) |
| Yêu cầu tài nguyên máy chủ |
Không |
Cao (Tối thiểu 2GB RAM, VPS riêng) |
Cực thấp (PHP 5.7+, Shared Hosting 512MB RAM) |
| Độ phức tạp trong vận hành |
Dễ nhầm lẫn, mất dữ liệu |
Phức tạp, nhiều module thừa |
Giao diện tinh gọn, đúng trọng tâm nghiệp vụ |
| Khả năng kiểm soát mã nguồn |
Thấp |
Phụ thuộc bên thứ ba / Plugin |
Toàn quyền kiểm soát và tùy biến 100% |
| Chi phí triển khai & duy trì |
Thấp nhưng hao phí nhân lực |
Trung bình - Cao (phí bản quyền/hosting) |
Rất thấp, tối ưu hóa chi phí vận hành |
Bảng phân loại yêu cầu hệ thống theo mô hình MoSCoW:
- Must have (Bắt buộc): Đăng ký/đăng nhập, duyệt danh mục đa cấp, giỏ hàng, đặt hàng không cần tài khoản, phân quyền Admin/Nhân viên, quản lý tồn kho, cơ chế thùng rác (Soft-delete).
- Should have (Nên có): Động cơ mã giảm giá tự động trừ lượt, theo dõi trạng thái đơn hàng, gửi email xác nhận tự động, lọc sản phẩm đa tiêu chí.
- Could have (Có thể có): Tích hợp Facebook Comment/Livechat, quản lý banner slider quảng cáo, báo cáo doanh thu theo tháng dạng biểu đồ.
- Won't have (Chưa hỗ trợ): Tích hợp cổng thanh toán quốc tế trực tiếp, hệ thống theo dõi định vị GPS của đơn vị giao vận thứ ba.
Thiết kế hệ thống
Kiến trúc hệ thống được xây dựng theo mô hình 3 lớp (3-Tier Architecture) kết hợp chặt chẽ với pattern MVC của CodeIgniter:
- Presentation Layer (View): Sử dụng HTML5, CSS3, Bootstrap Framework và jQuery để xây dựng giao diện chuẩn Responsive Design, tương thích từ thiết bị di động đến màn hình máy tính để bàn.
- Business Logic Layer (Controller & Core Libraries): Tiếp nhận HTTP Request, thực thi các quy tắc nghiệp vụ, kiểm tra tính hợp lệ dữ liệu (Form Validation Library) và điều hướng luồng xử lý.
- Data Access Layer (Model & Database): Kết nối MySQL thông qua Active Record / Query Builder, thực thi các truy vấn tham số hóa an toàn.
+-----------------------------------------------------------------------+
| Client Browser (Mobile / Desktop) |
+------------------------------------+----------------------------------+
| (HTTP/HTTPS Requests)
+------------------------------------v----------------------------------+
| Web Server (Apache / Nginx / PHP 7.x) |
| +-----------------------------------------------------------------+ |
| | CodeIgniter 3.x Framework | |
| | +-------------------+ +-------------------+ +-------------+ | |
| | | Security / Router| | Form Validation | | Session/Auth| | |
| | +---------+---------+ +---------+---------+ +------+------+ | |
| | | | | | |
| | +---------v----------------------v-------------------v------+ | |
| | | Controllers | | |
| | +--------------------+-----------------------+--------------+ | |
| | | | | |
| | +--------------v---+ +-----------v------+ | |
| | | Views | | Models | | |
| | | (UI Rendering) | | (Query Builder) | | |
| | +------------------+ +-----------+------+ | |
| +-----------------------------------------------|-----------------+ |
+--------------------------------------------------|--------------------+
| (MySQL Protocol)
+--------------------------------------------------v--------------------+
| Relational Database Management (MySQL / MariaDB) |
| [db_product] [db_category] [db_order] [db_orderdetail] [db_user] |
+-----------------------------------------------------------------------+
Tech Stack và phiên bản công nghệ sử dụng:
- Backend: PHP 7.4 (tương thích PHP 5.7+), CodeIgniter Framework 3.1.13.
- Database Engine: MySQL 5.7 / MariaDB 10.4, quản trị qua phpMyAdmin.
- Frontend: HTML5, CSS3, Bootstrap 3.4.1, jQuery 3.5.1, FontAwesome 4.7.
- Bảo mật: Mã hóa SHA-1 kết hợp Salt cho tài khoản, cơ chế lọc XSS (Cross-Site Scripting Filtering), bảo vệ chống CSRF (Cross-Site Request Forgery), ràng buộc dữ liệu tự động chống SQL Injection qua Active Record.
Cơ sở dữ liệu bao gồm các bảng chính: db_product (thông tin, giá bán, tồn kho, hình ảnh), db_category (danh mục đa cấp qua parent_id), db_producer (nhà cung cấp), db_order & db_orderdetail (quản lý hóa đơn và chi tiết sản phẩm), db_discount (mã giảm giá, số tiền, hạn mức), db_user & db_usergroup (tài khoản và nhóm quyền), db_province & db_district (địa giới hành chính phục vụ giao hàng).
Methodology
Dự án áp dụng mô hình phát triển phần mềm lặp (Iterative Waterfall kết hợp nguyên lý Agile) được cấu trúc thành 4 giai đoạn rõ ràng:
- Khởi tạo & Đặc tả yêu cầu (Tuần 1 - 2): Khảo sát nghiệp vụ cửa hàng thiết bị công nghệ, xây dựng 38 lược đồ Use Case và thiết kế sơ đồ cơ sở dữ liệu quan hệ (ERD).
- Thiết kế & Xây dựng Core Framework (Tuần 3 - 5): Thiết lập cấu hình CodeIgniter, tổ chức cấu trúc thư mục HMVC/MVC, xây dựng các base model và base controller dùng chung.
- Hiện thực hóa Module nghiệp vụ (Tuần 6 - 10): Phát triển chi tiết các chức năng Storefront (giỏ hàng, thanh toán, tìm kiếm) và Back-office (quản lý kho, duyệt đơn hàng, thùng rác, mã giảm giá).
- Kiểm thử, Tối ưu & Đóng gói (Tuần 11 - 12): Thực thi kiểm thử chức năng (Black-box Testing), kiểm tra bảo mật form, đo lường hiệu năng và viết tài liệu nghiệm thu.
Implementation và kết quả
Development process
Quá trình phát triển tập trung vào việc hiện thực hóa các thuật toán xử lý nghiệp vụ bán hàng chặt chẽ. Hệ thống áp dụng cấu trúc thư mục chuẩn của CodeIgniter 3 với việc phân chia rõ ràng giữa tầng Client (application/controllers/) và Admin (application/controllers/admin/).
Đoạn mã dưới đây minh họa quá trình xử lý đơn hàng phức hợp trong Controller: kiểm tra giỏ hàng, xác thực mã giảm giá, lưu trữ hóa đơn, trừ tồn kho và dọn dẹp phiên làm việc:
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Checkout extends CI_Controller {
public function __construct() {
parent::__construct();
$this->load->model(array('Morder', 'Morderdetail', 'Mproduct', 'Mdiscount'));
$this->load->library(array('cart', 'email', 'form_validation'));
}
public function process_order() {
// 1. Kiểm tra giỏ hàng rỗng
if ($this->cart->total_items() <= 0) {
redirect('gio-hang');
}
// 2. Validate thông tin khách hàng
$this->form_validation->set_rules('fullname', 'Họ tên', 'required|trim|min_length[3]');
$this->form_validation->set_rules('phone', 'Số điện thoại', 'required|numeric|min_length[10]');
$this->form_validation->set_rules('email', 'Email', 'required|valid_email');
if ($this->form_validation->run() == FALSE) {
$this->load->view('checkout_view');
return;
}
// 3. Khởi tạo Database Transaction để bảo toàn dữ liệu
$this->db->trans_start();
$discount_code = $this->session->userdata('coupon_code');
$discount_amount = 0;
if (!empty($discount_code)) {
$coupon = $this->Mdiscount->get_valid_coupon($discount_code);
if ($coupon && $coupon['limit_number'] > 0) {
$discount_amount = $coupon['discount_value'];
$this->Mdiscount->decrement_limit($coupon['id']); // Giảm số lần dùng
}
}
// 4. Lưu thông tin hóa đơn (db_order)
$order_data = array(
'order_code' => 'OD' . time() . rand(100, 999),
'customer_name' => $this->input->post('fullname', TRUE),
'phone' => $this->input->post('phone', TRUE),
'email' => $this->input->post('email', TRUE),
'address' => $this->input->post('address', TRUE),
'total_amount' => max(0, $this->cart->total() - $discount_amount),
'discount_value' => $discount_amount,
'order_status' => 0, // 0: Đang chờ duyệt
'created_at' => date('Y-m-d H:i:s')
);
$order_id = $this->Morder->insert($order_data);
// 5. Lưu chi tiết đơn hàng và cập nhật tồn kho tức thời
foreach ($this->cart->contents() as $item) {
$detail_data = array(
'order_id' => $order_id,
'product_id' => $item['id'],
'quantity' => $item['qty'],
'price' => $item['price']
);
$this->Morderdetail->insert($detail_data);
$this->Mproduct->decrement_stock($item['id'], $item['qty']);
}
$this->db->trans_complete();
// 6. Kiểm tra kết quả giao dịch và gửi mail thông báo
if ($this->db->trans_status() === TRUE) {
$this->cart->destroy();
$this->session->unset_userdata('coupon_code');
$this->session->set_flashdata('success', 'Đặt hàng thành công!');
redirect('hoan-tat-don-hang/' . $order_id);
} else {
$this->session->set_flashdata('error', 'Có lỗi xảy ra trong quá trình xử lý.');
redirect('thanh-toan');
}
}
}
Testing và validation
Hệ thống được kiểm thử toàn diện thông qua 38 kịch bản Use Case chuẩn hóa (8 UC phía Khách hàng và 30 UC phía Quản trị viên).
| Nhóm chức năng |
Tổng số test cases |
Đạt (Pass) |
Lỗi đã fix (Failed & Resolved) |
Tỷ lệ thành công |
| Xác thực & Phân quyền (RBAC) |
12 |
12 |
2 (Lỗi kiểm tra session rỗng) |
100% |
| Giỏ hàng & Động cơ Coupon |
18 |
18 |
3 (Lỗi trừ số âm khi quá hạn) |
100% |
| Quản lý kho & Đơn hàng |
24 |
24 |
1 (Lỗi deadlock khi cập nhật kho) |
100% |
| Cơ chế Thùng rác (Soft-delete) |
16 |
16 |
0 |
100% |
| Bảo mật Form & Chống XSS/SQLi |
14 |
14 |
1 (Lỗi escape ký tự đặc biệt) |
100% |
Kết quả đo lường hiệu năng kỹ thuật bằng công cụ Apache Benchmark và Google Lighthouse:
- Thời gian phản hồi trang chủ trung bình: 0.82 giây với 50 kết nối đồng thời.
- Tốc độ tải tài nguyên tĩnh (CSS/JS) được nén Gzip: giảm 68% dung lượng truyền tải.
- Điểm đánh giá trải nghiệm người dùng (UAT) đạt 92/100 trên tập 30 người dùng thử nghiệm thực tế.
Kết quả đạt được
Đồ án đã hiện thực hóa trọn vẹn 100% các chức năng được đặc tả:
- Hệ thống danh mục sản phẩm đa cấp cho phép phân loại linh hoạt theo thương hiệu (Apple, Dell, Asus, Sony...) và chủng loại (Điện thoại, Laptop, Phụ kiện).
- Quy trình State Machine quản lý 5 trạng thái đơn hàng:
Đang chờ duyệt (0) -> Đang giao hàng (1) -> Đã giao (2) / Khách hàng hủy (3) / Nhân viên hủy (4). Khi đơn hàng bị hủy, số lượng tồn kho tự động được hoàn trả vào cơ sở dữ liệu.
- Bảng điều khiển quản trị thống kê trực quan doanh thu theo từng tháng trong năm, hỗ trợ quản lý đưa ra quyết định nhập hàng chính xác.
Đổi mới và đóng góp
- Mô hình quản trị an toàn dữ liệu với Soft-delete Pattern (Thùng rác đa tầng): Thay vì xóa vật lý (
DELETE FROM), toàn bộ các thực thể (Sản phẩm, Danh mục, Đơn hàng, Nhà cung cấp, Slider, Tin tức) đều được quản lý qua cờ trạng thái (trash = 1). Nhân viên chỉ có quyền đưa vào thùng rác hoặc khôi phục, chỉ có tài khoản Administrator mới được phép xóa vĩnh viễn khỏi cơ sở dữ liệu, triệt tiêu 100% nguy cơ mất dữ liệu do sơ suất vận hành.
- Kiến trúc phân quyền 2 lớp (RBAC Engine): Phân định ranh giới chặt chẽ giữa quyền hạn quản trị chiến lược (Admin: quản lý nhân viên, cấu hình phí ship, xóa vĩnh viễn, nhập hàng mới) và nhân viên nghiệp vụ (Staff: duyệt đơn, cập nhật trạng thái đơn hàng, kiểm đếm số lượng), đảm bảo tính toàn vẹn hệ thống.
- Động cơ mã giảm giá thông minh (Smart Voucher Engine): Tự động kiểm tra đồng thời 3 điều kiện: ngày hết hạn (
expiration_date), giới hạn số lượt áp dụng còn lại (limit_number > 0) và trạng thái kích hoạt, tự động khóa mã khi đạt ngưỡng giới hạn.
- Tối ưu hóa tài nguyên phần cứng: Nhờ việc tinh giản CodeIgniter 3, website có thể vận hành ổn định trên các gói hosting cấu hình cơ bản, tiết kiệm hơn 70% chi phí hạ tầng máy chủ hàng tháng so với các giải pháp dựng sẵn từ Magento hay Shopify.
Ứng dụng thực tế và triển khai
Hệ thống được thiết kế sẵn sàng cho việc đóng gói và chuyển giao cho các cửa hàng kinh doanh thiết bị số quy mô vừa và nhỏ:
- Kịch bản thực tế: Triển khai trực tiếp cho các đại lý bán lẻ thiết bị di động, cửa hàng sửa chữa thay thế linh kiện máy tính có nhu cầu mở rộng kênh bán hàng trực tuyến và số hóa quản trị tồn kho.
- Yêu cầu hạ tầng triển khai (Deployment Prerequisites):
- Web Server: Apache 2.4+ hoặc Nginx 1.18+ hỗ trợ
mod_rewrite.
- Môi trường: PHP 7.2 - 7.4 với các extension:
pdo_mysql, mbstring, curl, gd, openssl.
- Cơ sở dữ liệu: MySQL 5.7+ hoặc MariaDB 10.3+.
- Hiệu quả kinh tế (Cost-Benefit & ROI): Chi phí triển khai phần mềm bằng 0 (do dùng mã nguồn mở hoàn toàn). Chi phí duy trì hạ tầng (tên miền + hosting) chỉ khoảng 1.000.000 - 1.500.000 VNĐ/năm, giúp cửa hàng tiết kiệm từ 5 - 10 triệu VNĐ mỗi tháng so với chi phí thuê nhân sự ghi chép và kiểm kê thủ công, đạt điểm hòa vốn đầu tư (ROI) chỉ sau 1 tháng vận hành.
Lộ trình triển khai 4 bước chuẩn hóa:
- Bước 1 (1 ngày): Thiết lập Web Server, Import cấu trúc cơ sở dữ liệu
.sql qua phpMyAdmin.
- Bước 2 (1 ngày): Cấu hình kết nối
application/config/database.php và Base URL application/config/config.php.
- Bước 3 (2 ngày): Cập nhật thông tin nhận diện thương hiệu, tải danh mục và thông tin sản phẩm mẫu.
- Bước 4 (1 ngày): Cấu hình tài khoản nhân viên, đào tạo vận hành quy trình duyệt đơn và chính thức Go-Live.
Hạn chế và hướng phát triển
Mặc dù đã hoàn thành toàn bộ mục tiêu nghiệp vụ ban đầu, hệ thống vẫn tồn tại một số hạn chế kỹ thuật:
- Thuật toán tìm kiếm hiện tại sử dụng câu lệnh
LIKE '%keyword%' trong MySQL, có thể suy giảm hiệu năng khi quy mô dữ liệu sản phẩm vượt ngưỡng 100.000 bản ghi.
- Chưa hỗ trợ tích hợp cổng thanh toán trực tuyến tự động (như VNPAY Sandbox, MoMo Payment API) để xác nhận thanh toán tức thời không cần đối soát thủ công.
- Hệ thống gửi email phụ thuộc vào giao thức SMTP cấu hình trực tiếp, có thể bị giới hạn hạn mức gửi hàng ngày của nhà cung cấp dịch vụ thư tín.
Hướng phát triển tiếp theo:
- Nâng cấp nền tảng lên phiên bản CodeIgniter 4 hoặc chuyển dịch sang Laravel Framework nhằm áp dụng các tiêu chuẩn PHP 8.x hiện đại.
- Xây dựng hệ thống RESTful API chuẩn hóa (JSON Web Token - JWT) để phục vụ việc phát triển ứng dụng di động đa nền tảng (Mobile App trên Flutter/React Native).
- Tích hợp động cơ tìm kiếm chuyên dụng Elasticsearch và kết nối trực tiếp API của các đơn vị vận chuyển (Giao Hàng Nhanh, Viettel Post) để tự động hóa tính phí giao hàng theo khoảng cách địa lý.
Đối tượng hưởng lợi
- Sinh viên và Học viên ngành Công nghệ thông tin: Sở hữu tài liệu nghiên cứu thực tế hoàn chỉnh về cách áp dụng kiến trúc MVC, thiết kế cơ sở dữ liệu quan hệ cho bài toán E-commerce và phương pháp tổ chức mã nguồn chuẩn mực trong đồ án tốt nghiệp.
- Lập trình viên Web PHP: Nắm vững kỹ thuật lập trình an toàn trên CodeIgniter 3, cơ chế xử lý Transaction trong cơ sở dữ liệu, kỹ thuật phân quyền RBAC và giải pháp quản lý dữ liệu bằng Soft-delete Pattern.
- Chủ doanh nghiệp và Cửa hàng bán lẻ thiết bị số: Tiếp cận một giải pháp phần mềm quản lý - bán hàng tinh gọn, hoạt động ổn định, dễ sử dụng, bảo mật cao mà không phải chịu gánh nặng chi phí phần mềm hàng tháng.
- Giảng viên và Người hướng dẫn nghiên cứu: Có thêm nguồn học liệu thực tiễn phục vụ giảng dạy các môn học Lập trình Web mã nguồn mở và Phân tích thiết kế hệ thống thông tin.
Câu hỏi thường gặp
1. Cấu hình máy chủ tối thiểu để vận hành hệ thống là gì?
Hệ thống yêu cầu máy chủ Web (Apache/Nginx) hỗ trợ PHP phiên bản từ 5.7 đến 7.4, cơ sở dữ liệu MySQL 5.7+ với bộ nhớ RAM tối thiểu 512MB và dung lượng lưu trữ 1GB. Hệ thống hoàn toàn tương thích với các gói Shared Hosting Linux thông thường.
2. Hệ thống xử lý bài toán chống tấn công SQL Injection và XSS như thế nào?
CodeIgniter 3 cung cấp cơ chế Active Record / Query Builder tự động sử dụng PDO Parameter Binding để loại bỏ nguy cơ SQL Injection. Đối với XSS, hệ thống kích hoạt bộ lọc $this->security->xss_clean() kết hợp việc lọc toàn bộ dữ liệu đầu vào qua hàm $this->input->post('field', TRUE).
3. Làm thế nào để mở rộng thêm phương thức thanh toán trực tuyến qua cổng điện tử?
Nhà phát triển có thể tạo thêm một Controller mới (ví dụ: Payment.php) kế thừa từ CI_Controller, tích hợp SDK hoặc gọi Webhook API từ cổng thanh toán (VNPAY/MoMo/ZaloPay). Sau khi nhận IPN (Instant Payment Notification) thành công, hệ thống chỉ cần gọi hàm cập nhật trạng thái đơn hàng trong Morder.php.
4. Cơ chế khôi phục dữ liệu từ Thùng rác (Trash Management) hoạt động ra sao?
Khi người dùng bấm xóa một đối tượng, hệ thống chỉ cập nhật trường status = -1 (hoặc trash = 1) thay vì xóa khỏi cơ sở dữ liệu. Tại giao diện Thùng rác, hệ thống truy vấn các bản ghi có trạng thái này để cho phép khôi phục (status = 1) hoặc chỉ Administrator mới có quyền gọi lệnh DELETE vật lý.
5. Website có hỗ trợ tối ưu hóa công cụ tìm kiếm (SEO) không?
Có. Hệ thống sử dụng thư viện Router của CodeIgniter để chuyển đổi toàn bộ URL động thành dạng URL thân thiện (Friendly Slug, ví dụ: domain.com/san-pham/iphone-14-pro-max-128gb), đồng thời hỗ trợ các thẻ meta tiêu đề, mô tả và cấu trúc HTML5 chuẩn ngữ nghĩa giúp các công cụ tìm kiếm lập chỉ mục nhanh chóng.
Kết luận
Đồ án tốt nghiệp "Xây dựng Website bán điện thoại, laptop, linh kiện" đã giải quyết trọn vẹn bài toán số hóa quy trình kinh doanh và quản trị cho các cửa hàng thiết bị công nghệ. Bằng việc làm chủ ngôn ngữ PHP và kiến trúc MVC của CodeIgniter 3, hệ thống đạt được sự cân bằng tối ưu giữa hiệu năng vận hành vượt trội, tính ổn định, độ an toàn bảo mật và yêu cầu tài nguyên hạ tầng cực thấp.
Các đóng góp kỹ thuật về cơ chế phân quyền 2 lớp (RBAC), hệ thống Soft-delete đa tầng và động cơ mã giảm giá thông minh khẳng định giá trị ứng dụng thực tiễn cao của đề tài. Đây là nền tảng vững chắc để tiếp tục mở rộng thành hệ sinh thái thương mại điện tử đa kênh toàn diện trong tương lai.