Chương 1: TÌM HIỂU BÀI TOÁN BÁN HÀNG TRỰC TUYẾN
Lý do chọn đề tài
Ngày nay, công nghệ thông tin (CNTT) đang phát triển mạnh mẽ và đóng vai trò quan trọng trong mọi lĩnh vực xã hội, đặc biệt là tại Việt Nam Kể từ năm 1995, sự phát triển của Internet đã giúp CNTT trở nên gần gũi hơn với người dân, khiến hình ảnh con người làm việc với máy tính trở nên phổ biến trong cuộc sống hàng ngày.
Sự phát triển nhanh chóng của Internet và thương mại điện tử đã trở thành một xu hướng tất yếu, cho phép khách hàng thoải mái lựa chọn và đặt hàng từ xa Tuy nhiên, thanh toán trực tuyến vẫn tiềm ẩn nhiều rủi ro Để giải quyết vấn đề này, hình thức thanh toán trực tuyến ra đời, mang lại sự đơn giản và nhanh chóng cho quá trình mua bán giữa khách hàng và nhà cung cấp.
Chính vì những yếu tố trên nên đề tài này sẽ hướng đến việc áp dụng thương mại điện tử để thanh toán trực tuyến các đơn hàng.
Nội dung bài toán
Thương mại điện tử xuất hiện để cải thiện mối quan hệ giữa khách hàng, công ty bán hàng và ngân hàng Mặc dù công nghệ thông tin đến Việt Nam muộn hơn so với nhiều quốc gia khác do điều kiện phát triển hạ tầng mạng khó khăn, nhưng trong những năm gần đây, internet đã trở nên phổ biến Sự phát triển này đã thúc đẩy các công ty tăng cường nhu cầu quảng cáo sản phẩm và giao dịch trực tuyến Trước đây, đã có hai giải pháp để giải quyết bài toán thương mại điện tử này.
Mô hình mua sắm trực tuyến một nửa cho phép khách hàng xem sản phẩm, liên hệ với nhà cung cấp và chuyển khoản trực tiếp vào tài khoản ngân hàng Tuy nhiên, phương thức này tiềm ẩn nhiều rủi ro, như lỗi chuyển khoản giữa các ngân hàng hoặc việc gửi nhầm tiền Bên cạnh đó, công ty có thể nhận được tiền nhưng chậm trễ trong việc giao hàng hoặc không giao hàng.
Hệ thống thanh toán trực tuyến hoàn toàn tự động sử dụng thẻ MasterCard, Visa và thẻ ghi nợ, nhưng yêu cầu bảo mật cao để bảo vệ thông tin tài khoản khách hàng Tuy nhiên, việc sử dụng các loại thẻ này vẫn chưa phổ biến đối với đa số người dùng tại Việt Nam.
Để đảm bảo mối liên hệ giữa khách hàng và công ty bán hàng, cần có một bên trung gian thứ ba Thanh toán trực tuyến đã được áp dụng trong thương mại điện tử nhằm bảo vệ an toàn cho tiền và hàng hóa của các bên, giúp việc mua bán hàng hóa diễn ra thuận lợi.
Chương 2: XÂY DỰNG HỆ THỐNG VÀ CÔNG CỤ LẬP TRÌNH
Mô hình xây dựng website
Website được xây dựng theo mô hình xoắn ốc
Là quá trình lặp theo hướng mở rộng, hoàn thiện dần qua 4 hoạt động
Lập kế hoạch: Xác lập tài nguyên, thời hạn cho dự án
Phân tích rủi ro: Xem xét các mạo hiểm có thể xảy ra
Công nghệ: Phát triển một phiên bản của phần mềm (lựa chọn một mô hình thích hợp)
Giao tiếp với khách hàng: khách hàng đánh giá về phiên bản đã phát triển, làm mịn, sửa đổi các yêu cầu
Sơ đồ của mô hình
Hình 2.1- Mô hình xoắn ốc
Ưu điểm của mô hình là khả năng linh hoạt
Các vòng tròn được lặp để đáp ứng yêu cầu thay đổi của người dùng
Kiểm soát rủi ro ở từng mức tiến hóa
Có thể sử dụng các mô hình khác nhau để tránh các rủi ro đã xác định Đánh giá chi phí chính xác hơn các phương pháp khác.
Ngôn ngữ lập trình và cơ sở dữ liệu
2.2.1 Ngôn ngữ lập trình PHP
PHP là một ngôn ngữ lập trình kịch bản hay một loại mã lệnh chủ yếu được dùng để phát triển các ứng dụng viết cho máy chủ Webserver
PHP, được thiết kế đặc biệt cho ứng dụng web, cho phép nhúng mã dễ dàng vào trang HTML Với tốc độ nhanh, kích thước nhỏ gọn, cú pháp tương tự như C và dễ học, PHP giúp rút ngắn thời gian phát triển sản phẩm so với các ngôn ngữ lập trình khác, nhanh chóng trở thành một trong những ngôn ngữ lập trình web phổ biến nhất.
Ngôn ngữ PHP và các thư viện, tài liệu gốc của nó được phát triển chủ yếu bởi cộng đồng, bên cạnh đó, Zend Inc cũng đóng góp một phần quan trọng, công ty do các nhà phát triển cốt lõi của PHP sáng lập.
It seamlessly integrates with various database management systems, including MySQL, Microsoft SQL Server 2000, Oracle, PostgreSQL, Adabas, dBase, Empress, FilePro, Informix, InterBase, mSQL, Solid, Sybase, Velocis, and numerous Unix-based databases (Unix dbm), as well as any DBMS that supports the Open Database Connectivity (ODBC) mechanism, such as IBM's DB2.
Nói đơn giản: PHP là ngôn ngữ dạng script thực thi trên webserver nhằm tạo ra trang web động
2.2.2 Hệ quản trị cơ sở dữ liệu MySQL
MySQL là hệ quản trị cơ sở dữ liệu mã nguồn mở phổ biến nhất thế giới, được ưa chuộng bởi các nhà phát triển ứng dụng nhờ tốc độ cao, tính ổn định và dễ sử dụng Với khả năng hoạt động trên nhiều hệ điều hành và cung cấp một hệ thống hàm tiện ích mạnh mẽ, MySQL là lựa chọn lý tưởng cho các ứng dụng có truy cập cơ sở dữ liệu qua internet Đặc biệt, MySQL hoàn toàn miễn phí và có nhiều phiên bản tương thích với các hệ điều hành như Windows, Linux và Mac.
OS X, Unix, FreeBSD, NetBSD, Novell NetWare, SGI Irix, Solaris, and SunOS are various operating systems, while MySQL exemplifies a fundamental relational database management system that utilizes Structured Query Language (SQL).
MySQL hỗ trợ các ngôn ngữ lập trình như PHP, Perl và nhiều ngôn ngữ khác, đóng vai trò quan trọng trong việc lưu trữ thông tin cho các trang web được phát triển bằng PHP hoặc Perl.
Apache là một nhóm phát triển phần mềm, được Rob McCool khởi xướng vào năm 1994 tại NCSA, trường đại học Illinois Nhiều webmaster đã tạo ra các phần mở rộng riêng cho máy chủ, cho phép họ tùy chỉnh hệ thống thông qua các 'patches' (miếng vá) Hệ thống này kết hợp một nhân gốc với nhiều mảnh vá, do đó được gọi là 'a patchy server' hay đơn giản là 'Apache' Hiện nay, Apache có thể được tải xuống miễn phí trên internet.
Apache đã thống trị lĩnh vực web từ năm 1996 nhờ vào tính miễn phí và hiệu quả vượt trội Sức mạnh của Apache được minh chứng khi IBM sử dụng nó trong các gói ứng dụng cho máy chủ WebSphere Nhiều phần mềm máy chủ web khác, như Zeus, cũng được phát triển dựa trên mã nguồn mở của Apache Hiện nay, khoảng 65-70% máy chủ web trên toàn cầu sử dụng Apache, cho thấy sự phổ biến vượt trội so với các phần mềm máy chủ web khác Apache có khả năng chạy trên nhiều hệ điều hành như Free BSD-UNIX, HP-UX, Linux, Microsoft Windows, SCO-UNIX và Solaris.
Apache là một chương trình máy chủ HTTP, cho phép giao tiếp qua giao thức HTTP Chương trình này hoạt động trên nhiều hệ điều hành, bao gồm Unix, Microsoft Windows, và Novell Netware Apache đóng vai trò quan trọng trong sự phát triển của mạng Internet toàn cầu.
Khi lần đầu ra mắt, Apache là chương trình máy chủ mã nguồn mở duy nhất có khả năng cạnh tranh với Sun Java System Web Server của Netscape Communications Corporation Kể từ đó, Apache đã không ngừng phát triển, trở thành phần mềm cạnh tranh mạnh mẽ về hiệu suất và tính năng phong phú so với các chương trình máy chủ khác.
Apache is developed and maintained by an open-source community under the auspices of the Apache Software Foundation It is released under the Apache License, making it free and open-source software.
Hình 2.2 - Mô hình hóa hoạt động của một ứng dụng web
2.2.4 Liên kết với các ngân hàng thanh toán trực tuyến
Trong môi trường thương mại điện tử Việt Nam, Ngân lượng và Bảo kim nổi bật là hai ngân hàng hỗ trợ thanh toán trực tuyến an toàn Cả hai đều cung cấp cách thức phát hành tài khoản nhanh chóng và cơ chế đảm bảo mua hàng an toàn Mặc dù cơ chế thanh toán và quản lý tài khoản của chúng khá tương đồng, bài viết này sẽ tập trung phân tích cách thức liên kết thanh toán với Ngân lượng.
Đăng nhập vào trang https://www.nganluong.vn để bắt đầu quá trình đăng ký
Hình 2.3 – Đăng ký tài khoản
Tùy vào cá nhân hay doanh nghiệp mà lựa chọn tài khoản
Hình 2.4 – Xác lập thông tin tài khoản
Sau khi kích hoạt tài khoản, khách hàng có thể thực hiện thanh toán trên tất cả các website hỗ trợ thanh toán trực tuyến Ngân lượng kết nối với hầu hết các ngân hàng tại Việt Nam, giúp việc chuyển khoản và thanh toán từ tài khoản ngân hàng trở nên dễ dàng Sau khi chọn sản phẩm và thanh toán qua nganluong.vn, khách hàng sẽ được chuyển đến trang thanh toán của Ngân lượng.
Hình 2.5 – Lựa chọn phương thức thanh toán
Sau khi xác thực thanh toán và chọn phương thức chuyển hàng, Ngân lượng sẽ thông báo việc chuyển hàng qua email và tin nhắn SMS cho bên bán Bên bán cần chuyển hàng đến khách hàng và xác thực lại trên nganluong.vn để hoàn tất giao dịch thành công.
Hình 2.6 – Xác thực thông tin thanh toán
Hình 2.7 – Hoàn tất giao dịch
Chương 3: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG
Lựa chọn hướng phân tích
Khi tiến hành phân tích và thiết kế hệ thống, có hai phương pháp chính là hướng chức năng và hướng dữ liệu Trong bài viết này, tôi sẽ tập trung vào việc phân tích theo hướng chức năng.
Với cách tiếp cận này, chức năng trở thành trọng tâm của quá trình phân tích và thiết kế, thực hiện phân tích theo phương pháp cấu trúc từ trên xuống.
- Xây dựng biểu đồ phân cấp chức năng
- Xây dựng biểu đồ luồng dữ liệu
- Xây dựng các mối quan hệ giữa các thực thể
- Xây dựng mô hình dữ liệu
3.1.1 Những chức năng chính của hệ thống
Quản lý phản hồi khách hàng
- Cập nhật sản phẩm mới
- Cập nhập sản phẩm bán chạy
+ Thêm sản phẩm vào giỏ hàng
+ Lựa chọn hình thức thanh toán
* Quản lý phản hồi khách hàng:
+ Trả lời phản ánh của khách hàng
+ Thống kê sản phẩm bán chạy
+ Thống kê lượng khách truy cập trong ngày, tháng, năm
3.1.2 Biểu đồ phân cấp chức năng
Qua các bước khảo sát, đánh giá và lập dự án ở phần trên, em có được biểu đồ phân cấp chức năng của hệ thống:
Hình 3.1 – Biểu đồ phân cấp chức năng hệ thống
Biểu đồ luồng dữ liệu mức ngữ cảnh
3.2.1 Biểu đồ luồng dữ liệu
Biểu đồ luồng dữ liệu là phương tiện diễn tả chức năng xử lý và việc trao đổi thông tin giữa các chức năng
- Các ký hiệu được dùng trong biểu đồ:
+ Luồng dữ liệu : là một tuyến truyền dẫn thông tin vào hay ra một chức năng nào đó
Ký hiệu: Tên luồng dữ liệu
+ Chức năng: là một quá trình biến đổi dữ liệu
Quản lý hoá đơn Thống kê
Sửa thông tin sản phẩm
Lựa chọn hình thức thanh toán
Duyệt hoá đơn sản phẩm bán chạy
Trả lời phản ánh khách hàng
+ Các kho dữ liệu: Là các dữ liệu được lưu lại, để có thể đươc truy cập nhiều lần về sau
+ Các tác nhân ngoài: Một đối tác là một thực thể ngoài hệ thống, có trao đổi thông tin với hệ thống
Các tác nhân trong hệ thống là chức năng hoặc hệ con được mô tả dưới một trạng thái khác của mô hình, đồng thời có khả năng trao đổi thông tin với các phần tử trong trang hiện tại của mô hình.
- Biểu đồ luồng dữ liệu ngữ cảnh:
Hệ thống bao gồm hai tác nhân chính: người quản lý chung, có nhiệm vụ quản trị chương trình, và giáo viên, người cập nhật thông tin cá nhân và truy xuất dữ liệu từ hệ thống khi cần thiết.
+ Biểu đồ luồng dữ liệu mức ngữ cảnh:
Hình 3.2 – Biểu đồ luồng dữ liệu mức ngữ cảnh
3.2.2 Biểu đồ luồng dữ liệu vật lý mức 1
Chức năng cập nhật thông tin
Hình 3.2 – Chức năng cập nhật thông tin
Thiết lập thông tin về website
Sửa thông tin sản phẩm Xóa sản phẩm Tìm kiếm sản phẩm Trả lời phản ánh khách hàng Xem hóa đơn
Thiết lập phiếu giảm giá Kiểm tra thông tin khách hàng Phân loại khách hàng
Quản lý sản phẩm, đơn hàng
Chọn sản phẩm, phương thức thanh toán
Chức năng dành cho khách hàng
Hình 3.3 – Chức năng dành cho khách hàng
3.2.3 Biểu đồ luồng dữ liệu mức đỉnh
Dựa vào sơ đồ phân cấp chức năng ở trên để tách các chức năng thành các chức năng con Trên cơ sở tôn trọng 4 nguyên tắc sau :
+ Các luồng dữ liệu được bảo toàn
+ Các tác nhân ngoài cũng được bảo toàn
+ Có thể xuất hiện các kho dữ liệu
+ Bổ sung thêm các luồng dữ liệu giữa các chức năng
Thêm sản phẩm vào giỏ hàng Lựa chọn hình thức thanh toán
Xem thống kê mặt hàng Đánh giá, phản hồi Đăng ký tài khoản Tìm kiếm sản phẩm Cập nhật giỏ hàng Kiểm tra hóa đơn
Khách hàng Trang thanh toán trực tuyến
Chi tiết thông tin sản phẩm
Nhập tên và MK Đăng nhập hệ thống quản lý
Lập hóa đơn Đặt Hàng
Xu ất, x em Đơn đặt hàng hóa đơn được lập
Y/c đặt hàn g ch ấp n hận Thông tin KH
Cập nhật (thêm, sửa, xóa)
Y/c cậ p nh ật KQ cậ p nh ật
Tên tác Xem hoá đơn
Tên tác Xem hoá đơn
Tên tác Xem hoá đơn
Tên tác Xem hoá đơn
Tên chức năng Đăng nhập tài khoản
Nhập tên và MK, và thanh toán hóa đơn chấp nhận Duyệt hoá đơn
Xem đơn hàng và tên tác nhân ngoài, lựa chọn hình thức thanh toán là những chức năng quan trọng trong quy trình mua sắm trực tuyến Khách hàng có thể duyệt hóa đơn, cập nhật giỏ hàng và chọn sản phẩm dễ dàng Hệ thống cũng cho phép trả lời phản án từ khách hàng, đảm bảo sự hài lòng trong dịch vụ Việc hiện thị hóa đơn và các phương thức thanh toán như Bảo Kim giúp tối ưu hóa trải nghiệm mua sắm.
Trang web Ngân Lượng.vn và Bảo Kim.vn cung cấp dịch vụ quản lý số dư tài khoản và cho phép khách hàng duyệt hóa đơn Người dùng có thể xem hóa đơn và lựa chọn hình thức thanh toán phù hợp Hệ thống hỗ trợ khách hàng trong việc truy cập và quản lý giao dịch một cách hiệu quả.
Thanh toán tạm giữ cho sản phẩm là một phương thức thanh toán quan trọng Các phương thức thanh toán cho sản phẩm bao gồm nhiều hình thức khác nhau Việc xác nhận giao dịch là bước cần thiết trong quá trình thanh toán.
T h ô n g tin KH Hó a đơn Kiểm tr a
Gửi sản phẩm và nhận phản hồi Thêm vào giỏ hàng Tìm kiếm Sản phẩm
3.2.4 Biểu đồ luồng dữ liệu mức dưới đỉnh
Phân rã chức năng 1: Đặt hàng
Hình 3.4 – Phân rã chức năng đặt hàng
Phân rã chức năng 2: Thanh toán trực tuyến
Hình 3.5 – Phân rã chức năng thanh toán trực tuyến
Trang thanh toán trực tuyến Đơn hàng Đơn đặt hàng
Thông tin quản lý Gửi yêu cầu chuyển hàng
Xem, xác nhận Chuyển hàng
T h an h to án tạm g iữ
Kết thúc đặt hàng Đơn đặt hàng
Thông tin các MH đặt mua
Nhập đầy đủ Đơn đặt hàng chi tiết Danh sách MH
Phân rã chức năng 3: Cập nhật mặt hàng
Hình 3.6 – Phân rã chức năng cập nhật mặt hàng
Hình 3.7 – Phân rã một số chức năng khác
Thiết lập phiếu giảm giá
Thông tin Admin Đăng nhập hệ thống QL
Cập nhật đơn đặt hàng Đơn đặt hàng
Thông tin Admin Đăng nhập hệ thống QL
Cập nhật đơn đặt hàng Y/c cập nhật đơn đặt hàng Đơn đặt hàng Thông tin MH
Xây dựng mô hình dữ liệu logic
Dựa trên nội dung khảo sát và quá trình phân tích, tôi đã xác định được các yêu cầu cần thiết cho mô hình dữ liệu nhằm đáp ứng yêu cầu của hệ thống, từ đó xây dựng được mô hình dữ liệu phù hợp.
3.3.1 Thiết kế cơ sở dữ liệu mức logic
Bảng tài khoản quản trị
TT Tên trường Kiểu dữ liệu Khóa Miêu tả
1 Admin_ID Int P Mã tự động tăng
2 Admin_name varchar(100) Tên đăng nhập
3 Admin_pass varchar(100) Mật khẩu đăng nhập
Bảng tài khoản khách hàng
TT Tên trường Kiểu dữ liệu Khóa Miêu tả
1 User_ID Int P Mã tự động tăng
2 User_name Varchar (100) Tên đăng nhập
3 User_pass Varchar (100) Mật khẩu đăng nhập
4 User_FullName Varchar (100) Họ tên
5 User_adress Varchar (255) Địa chỉ khách hàng
6 User_Email Varchar (150) Địa chỉ email
7 User_Phone Varchar (100) Số điện thoại
8 User_DateReg Date Ngày đăng ký
9 User_IdGroup Int F Nhóm khách hàng
10 User_Image Varchar (255) Hình ảnh đại diện
TT Tên trường Kiểu dữ liệu Khóa Miêu tả
1 User_IdGroup Int P Mã tự động tăng
2 Group_name Varchar (100) Tên nhóm
TT Tên trường Kiểu dữ liệu Khóa Miêu tả
1 MH_ID Int P Mã tự động tăng
2 MH_TenMH Varchar (100) Tên mặt hàng
3 MH _UrlImage Varchar (255) Địa chỉ hình ảnh
4 MH _MotaMH Varchar (255) Mô tả mặt hàng
5 MH _Date Date Ngày cập nhật
6 MH _GiaBan Int Giá bán
7 MH _SumView Int Số lần xem
8 MH _Hiden Int Hiện/ ẩn mặt hàng
9 ID_Loai Int F Loại mặt hàng
10 ID_ChungLoai Int F Chủng loại mặt hàng
11 MH_GhiChu Varchar (255) Ghi chú mặt hàng
12 MH _TonKho Int Số lượng tồn kho
13 MH _SumBuy Int Số lần mua
TT Tên trường Kiểu dữ liệu Khóa Miêu tả
1 Loai _Id Int P Mã tự động tăng
2 CL_ID Int F Chủng loại
3 Loai_TenLoai Varchar (100) Tên Loại
4 Loai_ThuTu Int Thứ tự
5 Loai_Hiden Int Ẩn/ hiện
TT Tên trường Kiểu dữ liệu Khóa Miêu tả
1 CL_ID Int P Mã tự động tăng
2 CL_TenCL Varchar (100) Tên chủng loại
3 CL_ThuTu Int Thứ tự
4 CL_Hiden Int Ẩn/ hiện
TT Tên trường Kiểu dữ liệu Khóa Miêu tả
1 DH_ID Int P Mã tự động tăng
2 User_ID Int F Mã khách hàng
3 DH_date Date Thời điểm đặt hàng
4 DH_NguoiNhan Varchar (100) Tên người nhận
5 DH_Adress Varchar (100) Địa điểm giao hàng
6 DH_TinhTrang Int Tình trạng đơn hàng
7 DH_Note Varchar (100) Ghi chú
Bảng chi tiết đơn hàng
TT Tên trường Kiểu dữ liệu Khóa Miêu tả
1 CTDH_ID Int P Mã tự động tăng
2 DH_ID Int F Mã đơn hàng
3 MH_ID Int F Mã mặt hàng
4 CTDH_SoLuong Int Số lượng
5 CTDH_Gia Int Giá trị đơn hàng
Bảng hỗ trợ trực tuyến
TT Tên trường Kiểu dữ liệu Khóa Miêu tả
1 HT_ID Int P Mã tự động tăng
2 HT_NickName Varchar (255) Nick name
TT Tên trường Kiểu dữ liệu Khóa Miêu tả
1 Banner_ID Int P Mã tự động tăng
2 Banner_name Varchar (255) Tên banner
TT Tên trường Kiểu dữ liệu Khóa Miêu tả
1 Coupon_ID Int P Mã tự động tăng
2 MH_ID Int F Mã mặt hàng
4 Ngay_BD Date Ngày bắt đầu
5 Ngay_KT Date Ngày kết thúc
6 User_IdGroup Int F Nhóm khách hàng
Mô hình quan hệ
Hình 3.8 – Mô hình đặt hàng
3.4.2 Mô hình cập nhật mặt hàng
Hình 3.9 – Mô hình cập nhật mặt hàng
3.4.3 Mô hình mặt hàng - phiếu giảm giá
Hình 3.10 – Mô hình mặt hàng – phiếu giảm giá
3.4.4 Mô hình khách hàng – nhóm khách hàng
Hình 3.11 – Mô hình khách hàng – nhóm khách hàng
Thiết kế chương trình
3.5.1 Thiết kế các chức năng cho người dùng
- Hiện thị thông tin về sản phẩm:
+ Hình ảnh đại diện của sản phẩm
+ Giá bán, kích thước, trọng lượng, nhà sản xuất, thông số kỹ thuật (nếu có)
+ Thông tin mô tả sản phẩm, chức năng hỗ trợ
+ Đánh giá của các khách hàng về sản phẩm đó
- Khách hàng cũng có thể bình luận về sản phẩm
- Thông tin về những sản phẩm bán chạy nhất, sản phẩm mới nhất và sản phẩm khuyến mãi
- Khách hàng có thể tùy chọn không cần đăng ký, đăng nhập mà vẫn mua được sản phẩm
- Khách hàng có thể xóa bớt sản phẩm trong giỏ hàng, cập nhật giỏ hàng nhanh chóng
- Khách hàng có thể tìm kiếm sản phẩm dễ dàng trên trang web
- Khách hàng có thể chọn các hình thức thanh toán dễ dàng
- Khách hàng có thể liên hệ trực tuyến với nhân viên hỗ trợ thông qua yahoo hoặc điện thoại
- Chế độ vận chuyển hàng tận nơi Đảm bảo an toàn, nhanh chóng
- Thanh toán trực tiếp: khách hàng đến trực tiếp địa chỉ của cửa hàng thanh toán trực tiếp để mua sản phẩm
Khách hàng ở xa có thể thực hiện thanh toán qua ATM của các ngân hàng Sau khi nhận được thanh toán, cửa hàng sẽ xác minh thông tin khách hàng qua điện thoại và sau đó tiến hành gửi sản phẩm đến tay khách hàng.
Khách hàng có thể dễ dàng thanh toán qua ví điện tử bằng cách đăng ký ví Ngân lượng tại nganluong.vn hoặc ví Bảo kim tại baokim.vn Sau khi hoàn tất giao dịch, cửa hàng sẽ xác nhận hóa đơn và tiến hành giao hàng cho khách hàng.
- Cách thức thanh toán qua Ngân lượng và Bảo kim:
Hình 3.12 – Mô hình thanh toán trực tuyến
3.5.2 Thiết kế các chức năng quản lý website
- Cập nhật mặt hàng: Thêm, sửa, xóa
- Cập nhật khách hàng: Sửa, xóa
- Cập nhật đơn hàng: Duyệt, xóa
- Phân loại nhóm khách hàng
Khách hàng Ngân Lượng.vn,
Bảo Kim.vn Đăng ký tài khoản người bán tại cổng thanh toán NgânLượng.vn và BảoKim.vn
NgânLượng.vn và BảoKim.vn xác nhận thông tin của người bán qua điện thoại và chứng minh thư
Xác nhận của NgânLượng.vn và BảoKim.vn Đăng ký một tài khoản giao dịch trên cổng thanh toán NgânLượng.vn và BảoKim.vn
Nhận được yêu cầu gửi hàng, xác minh hóa đơn trên NgânLượng.vn và BảoKim.vn, gửi hàng cho khách hàng và nhận đc thanh toán
Khách hàng có thể dễ dàng chọn sách và thêm vào giỏ hàng, sau đó thanh toán qua NgânLượng.vn hoặc BảoKim.vn Để đảm bảo an toàn và tránh lừa đảo, khách hàng nên chọn hình thức thanh toán tạm giữ, cho phép giữ tiền trong vòng dưới 7 ngày.
- Chức năng gửi email cho khách hàng
- Thiết lập phiếu giảm giá cho từng nhóm khách hàng, loại sản phẩm
- Thiết lập các thông tin về của hàng, chính sách bán hàng, chính sách bảo mật thông tin khách hàng
- Thống kê lượng hàng bán trong ngày, tuần, tháng, năm
- Quản lý nhận xét của khách hàng, trả lời thư phản ánh của khách hàng
3.5.3 Kết nối PHP với MySQL
Thông thường, trong một ứng dụng có giao tiếp với CSDL, ta phải làm theo bốn trình tự sau:
Bước 1: Thiết lập kết nối tới CSDL
Bước 3: Tiến hành các truy vấn SQL, xử lý các kết quả trả về nếu có
Bước 4: Đóng kết nối tới CSDL
Trong lập trình PHP, việc tương tác với cơ sở dữ liệu thường được thực hiện thông qua các hàm, khác với lập trình trên Windows sử dụng các chương trình điều khiển trung gian như ADO hay ODBC để kết nối và truy vấn.
Trong chương trình này MySQL chạy trên nền máy chủ localhost, người sử dụng của CSDL này có username là 'root', mật khẩu là ''
Thiết lập kết nối tới MySQL Để kết nối tới MySQL, ta sử dụng hàm mysql_connect()
Cú pháp: mysql_connect(host,tên_truy_cập,mật_khẩu);
- Host là chuỗi chứa tên (hoặc địa chỉ IP) của máy chủ cài đặt MySQL
- Tên_truy_cập là chuỗi chứa tên truy cập hợp lệ của CSDL cần kết nối
- Mật_khẩu là chuỗi chứa mật khẩu tương ứng với tên truy cập
Khi kết nối thành công đến MySQL, hàm sẽ trả về một số nguyên xác định liên kết; nếu không, hàm sẽ trả về giá trị false.
Ta có thể dùng hàm if để kiểm tra xem có kết nối được tới MySQL hay không:
Để lựa chọn cơ sở dữ liệu (CSDL) mà người dùng với tên truy cập "tên_truy_cập" có quyền sử dụng, bạn có thể sử dụng hàm mysql_select_db với cú pháp: mysql_select_db(tên_CSDL).
- Hàm này thường được dùng sau khi thiết lập kết nối bằng hàm mysql_connect
- Hàm này trả về true nếu thành công, false nếu thất bại
Đóng kết nối tới CSDL Để đóng kết nối tới CSDL, ta dùng hàm mysql_close
Hàm này có nhiệm vụ đóng kết nối tới CSDL có mã định danh được tạo ra bởi hàm mysql_connect()
Cú pháp: mysql_close(mã_định_danh_kết_nối)
$link = mysql_connect("localhost","root", ""); if (!$link) { echo "Không thể kết nối được tới CSDL MySQL";
$link = mysql_connect("localhost", "root", ""); if (!$link)
{ echo "Không thể kết nối được tới MySQL";
} if (!mysql_select_db ("site01"))
{ echo "Không thể lựa chọn được CSDL site01";
$link = mysql_connect("localhost","root", ""); if (!$link)
{ echo "Không thể kết nối được tới MySQL";
Chương 4: GIỚI THIỆU CHƯƠNG TRÌNH
Cài đặt chương trình
Web Server (máy phục vụ Web) là máy tính cài đặt phần mềm phục vụ Web, đôi khi phần mềm này cũng được gọi là Web Server Tất cả các Web Server đều có khả năng hiểu và chạy các file *.htm và *.html, nhưng mỗi loại Web Server lại hỗ trợ một số kiểu file chuyên biệt, chẳng hạn như IIS của Microsoft cho các file *.asp và *.aspx, Apache dành cho file *.php, và Sun Java System Web Server của SUN cho file *.jsp.
Xampp là phần mềm giúp tạo máy chủ Web trên máy tính cá nhân (Localhost), bao gồm các thành phần như Apache, PHP, MySQL, FTP Server và Mail Server, cùng với các công cụ hỗ trợ như PHPmyadmin.
Hệ quản trị cơ sở dữ liệu MySQL version: 5.5.27
Giới thiệu hệ thống
Website bán hàng trực tuyến chủ yếu nhằm giới thiệu sản phẩm và hỗ trợ thanh toán trực tuyến, đồng thời cung cấp các thống kê chi tiết về sản phẩm và đơn hàng.
Khi khách hàng đăng nhập vào hệ thống và chọn sản phẩm, họ cũng sẽ đăng ký hình thức thanh toán Hệ thống sẽ thông báo cho quản trị viên khi có đơn hàng mới, và phương thức vận chuyển sẽ phụ thuộc vào hình thức thanh toán đã chọn Các giao dịch thành công sẽ được xác nhận và hiển thị trong bảng đơn hàng.
Khách hàng khi có khiếu nại về sản phẩm có thể liên hệ nhà cung cấp dịch vụ thanh toán hoặc với website bán hàng
Hệ thống thống kê lượng sản phẩm, khách hàng, số đơn hàng, thông tin chi tiết về website
Khách hàng được phân thành ba nhóm chính: khách hàng vãng lai, khách hàng đã đăng ký tài khoản và khách VIP Mỗi nhóm sẽ được áp dụng các chiến dịch quảng cáo hoặc khuyến mãi phù hợp nhằm tối ưu hóa trải nghiệm và tăng cường sự hài lòng.
Khi khách hàng đặt hàng, thông tin sẽ được lưu trữ trong trang quản trị Dựa vào thông tin xác thực và báo cáo từ nhà cung cấp dịch vụ thanh toán trực tuyến, quản trị viên sẽ tiến hành liên hệ và gửi sản phẩm đến tay khách hàng.
Khi có sản phẩm mới, quản trị sẽ cập nhập các thông tin về sản phẩm đó Áp dụng các hình thức khuyến mãi cho sản phẩm nếu có
Quản lý thông tin website
Quản trị viên thay đổi thông tin về website khi cần thiết, các chính sách thỏa thuận và bảo mật thông tin khách hàng
4.2.1 Giao diện người dùng (khách hàng)
- Đăng ký tài khoản mới
Hình 4.2 – Đăng ký tài khoản mới
Hình 4.3 – Lấy lại mật khẩu
- Chức năng tìm kiếm sản phẩm
Hình 4.4 – Chức năng tìm kiếm sản phẩm
Hình 4.5 – Đăng nhập vào tài khoản
Hình 4.7 – Hỗ trợ trực tuyến
Hình 4.8 – Đăng nhập hệ thống quản trị
- Trang quản trị hệ thống
Hình 4.9 – Trang quản lý hệ thống
Hình 4.10 – Trang quản lý sản phẩm
- Thêm nhận xét cho sản phẩm
Hình 4.11 – Thêm nhận xét cho sản phẩm
Hình 4.12 – Quản lý đơn hàng
Hình 4.13 – quản lý khách hàng
- Quản lý giảm giá trên sản phẩm
Hình 4.14 – Quản lý giảm giá trên sản phẩm
4.2.3 Mô hình thanh toán trực tuyến
Hình 4.15 – Mô hình thanh toán trực tuyến
Thanh toán tạm giữ đảm bảo an toàn cho khách hàng khi giao dịch mua bán trên mạng :
Hình 4.16 – Phương thức thanh toán tạm giữ
Phương thức thanh toán tạm giữ là hình thức mà tài khoản thanh toán của người mua bị treo, và người bán chỉ nhận tiền khi người mua đã nhận hàng và xác nhận giao dịch, hoặc sau tối đa 7 ngày Tuy nhiên, người mua có thể thanh toán ngay cho những người bán có chứng chỉ đảm bảo, với sự hỗ trợ bồi thường từ Ngân Lượng trong trường hợp bị lừa đảo và thiệt hại tài chính.
NgânLượng.vn kết nối trực tiếp với nhiều ngân hàng và tổ chức tài chính hàng đầu như Vietcombank, Techcombank, Vietinbank, Đông Á, VIB, SHB, cùng với các dịch vụ thanh toán quốc tế Visa/Master và các nhà mạng như Vinaphone, Mobiphone.
Hình 4.17 – Mô hình kết nối ngân hàng - website
Khi người dùng chọn hình thức thanh toán trực tuyến qua NgânLượng, hệ thống sẽ cung cấp đầy đủ thông tin đơn hàng như hóa đơn sản phẩm, số lượng và tổng số tiền cần thanh toán Tài khoản nhận tiền, tức là tài khoản của website, cũng sẽ hiển thị thông tin chi tiết của người nhận thanh toán Khách hàng có thể thực hiện thanh toán bằng tài khoản ngân hàng hoặc sử dụng số dư trong tài khoản NgânLượng.vn.
Chọn số ngày tạm giữ tài khoản giao dịch đến khi nhận được hàng (thông thường là 7 ngày).
Kết luận
- Chương trình này đã đáp ứng được các yêu cầu, chức năng chính cần thiết, của một website cơ bản
- Giao diện của chương trình được thiết kế rất gần gũi, thân thiện với người sử dụng
Chương trình này gặp phải những thiếu sót và hạn chế do thời gian và mức độ khảo sát cho phép Thông tin về sản phẩm chưa được phân tích chi tiết, điều này gây khó khăn cho việc so sánh sản phẩm và xây dựng cơ sở dữ liệu thống kê.
Các chức năng thống kê liên quan đến mặt hàng và khách hàng vẫn chưa hoàn thiện, thiếu một số tính năng hỗ trợ như khả năng so sánh sản phẩm cùng loại và so sánh giá với các trang web khác.
- Hoàn thiện các modul chức năng hỗ trợ người dùng, chức năng thống kê
Xây dựng bộ Log File là việc lưu lại các hoạt động của người quản trị trên máy chủ web hoặc máy chủ proxy Tập tin này chứa thông tin quan trọng như người truy cập, thời gian khách viếng thăm và địa chỉ IP Log file mang lại nhiều lợi ích cho webmaster, giúp phân tích các phần của trang web mà người truy cập thường xuyên xem, từ đó tối ưu hóa trải nghiệm người dùng.
- Xây dựng bộ backup dữ liệu cho hệ thống
Quá trình thực hiện đề tài đã giúp tôi nâng cao kiến thức về hệ quản trị cơ sở dữ liệu MySQL và ngôn ngữ lập trình PHP, từ đó phục vụ hiệu quả cho việc thiết kế và phát triển website.
Với sự phát triển nhanh chóng của công nghệ thông tin và viễn thông, các cửa hàng và công ty nhỏ ngày càng nhận thức rõ sức mạnh của website trong việc quảng bá và bán hàng Do đó, việc phát triển các phương thức thanh toán an toàn và thuận tiện cho khách hàng trở thành một nhu cầu cấp thiết.
Với kiến thức nền tảng từ trường và nỗ lực cá nhân, em đã hoàn thành đề tài "Xây dựng Website bán hàng ứng dụng thanh toán trực tuyến" Mặc dù đã cố gắng và đầu tư nhiều, nhưng do hạn chế về thời gian và năng lực, đề tài vẫn còn nhiều thiếu sót Em rất mong nhận được ý kiến đóng góp từ thầy cô và các bạn để website có thể hoàn thiện hơn.
Em xin chân thành cảm ơn thầy giáo ThS Phan Anh Phong đã hỗ trợ và hướng dẫn em nhiệt tình trong suốt quá trình thực hiện đồ án tốt nghiệp Sự giúp đỡ của thầy đã góp phần quan trọng vào thành công của em.