You are on page 1of 63

LỜI CẢM ƠN

Sau 4 năm học tập và rèn luyện tại khoa Công nghệ Thông tin trường Đại
học Tài nguyên và Môi trường Hà Nội đến nay em đã hoàn thành chương trình học và
đồ án tốt nghiệp.
Lời đầu tiên em xin chân thành cảm ơn tới quý thầy cô trong khoa Công
nghệ Thông tin nói riêng và trường Đại học Tài nguyên và Môi trường Hà Nội nói
chung. Thầy cô đã dạy dỗ, chỉ bảo và trang bị cho em những kiến thức cơ bản, cần
thiết trong suốt thời gian học tập tại trường để em có đủ kiến thức hoàn thành đề tài
tốt nghiệp này và là hành trang để vững bước vào công việc sau này.
Trong thời gian làm đồ án vừa qua, em xin gửi lời cảm ơn sâu sắc tới cô
Thạc sĩ Bùi Thị Thùy đã trực tiếp hướng dẫn chỉ bảo, tận tình giúp đỡ em nhiều ý
kiến đóng góp quý báu về kiến thức cũng như tài liệu để em có thể hoàn thành đồ án
này.
Em xin bày tỏ lòng cảm ơn đến gia đình, bạn bè đã động viên, giúp đỡ và
tạo điều kiện cho em trong thời gian thực hiện đồ án, để có thể hoàn thành đồ án này
trong một điều kiện tốt nhất.
Sau cùng, em xin kính chúc quý Thầy cô trong khoa Công nghệ Thông tin
và cô Thạc sĩ Bùi Thị Thùy thật dồi dào sức khỏe để tiếp tục thực hiện sứ mệnh cao
đẹp của mình là truyền đạt kiến thức cho thế hệ mai sau.

Em Xin Chân Thành Cảm Ơn!

Hà Nội, Ngày ….tháng ….năm 2015.


Sinh viên

Trần Thị Trang


LỜI NÓI ĐẦU

Ngành công nghệ thông tin trong những năm gần đây đã có những bước phát
triển vượt bậc trên thế giới cũng như trong nước. Công nghệ thông tin đã góp phần rất
lớn cho sự phát triển kinh tế của nước ta trong thời kì đổi mới. Chính vì thế, nhu cầu
tin học hóa các chương trình quản lý trong thư viện cũng đang rất cần thiết để có thể
đổi mới với quy trình quản lý, đạt hiệu quả cao.
Với sự triển của mạng Internet hiện nay, việc cập nhập các thông tin cũng như
thực hiện các giao dịch thông qua Web ngày càng trở nên phổ biến, và một trong những
loại hình kinh doanh hiện nay khá phổ biến đó là buôn bán qua mạng. Hình thức kinh
doanh này mang lại rất nhiều lợi ích cho người tiêu dùng và nhà cung cấp. Phần lớn
khách hàng có nhu cầu mua hàng thì phải đến các siêu thị, các cửa hàng hay các trung
tâm thương mại để lựa chọn những mặt hàng phù hợp với nhu cầu của mình. Công việc
này rất tốn thời gian, bên cạnh đó người tiêu dùng còn phải mất đi một khoản chi phí
cho việc đi lại. Tất cả những bất cập đó được loại bỏ với sự ra đời của website bán hàng
trực tuyến. Khi khách hàng có nhu cầu mua hàng, dù ở nhà hay công sở hay bất cứ nơi
nào có mạng Internet, khách hàng chỉ cần vào những trang bán hàng qua mạng là có thể
tìm kiếm được những mặt hàng mà mình muốn mua, tìm đúng được sản phẩm tốt, đặt
hàng và nhận được hàng một cách dễ dàng. Ngoài những lợi ích mà Internet mang lại
cho người tiêu dùng nó còn giúp nhà cung cấp phát triển rất nhiều trong việc mở rộng
thị trường, giúp thương hiệu công ty, doanh nghiệp được nhiều người biết đến rộng
rãi.Từ đó giảm được chi phí quảng cáo, không những thế nó còn giúp nhà cung cấp
thuận tiện cho việc quản lý, quảng bá sản phẩm, chăm sóc khách hàng. Vì vậy sẽ thật
thiếu sót nếu công ty, doanh nghiệp nào chưa xây dựng được website để giới thiệu rộng
rãi các sản phẩm của mình.
Qua tìm hiểu cùng với sự kết hợp các kiến thức đã học và với sự hướng dẫn của
cô Thạc sĩ Bùi Thị Thùy em đã chọn và thực hiện đề tài: “Xây dựng Website bán
hàng thời trang qua mạng”.
Tuy nhiên, do thời gian hạn hẹp, mặc dù đã nỗ lực hết sức mình nhưng chắc
rằng đồ án khó tránh khỏi thiếu sót. Em rất mong nhận được sự thông cảm, những lời
góp ý và chỉ bảo tận tình của quý Thầy Cô và các bạn.

MỤC LỤC
LỜI CẢM ƠN..............................................................................................................1
LỜI NÓI ĐẦU..............................................................................................................2
DANH MỤC HÌNH VẼ...............................................................................................5
DANH MỤC BẢNG BIỂU..........................................................................................6
DANH MỤC CÁC TỪ VIẾT TẮT..............................................................................7
CHƯƠNG 1: GIỚI THIỆU CHUNG.........................................................................1
1.1 Đặt vấn đề.........................................................................................................1
1.2 Mục tiêu của đề tài.............................................................................................8
1.3 Hướng giải quyết...............................................................................................2
1.4 Giới hạn đề tài...................................................................................................9
1.5. Bố cục báo cáo..................................................................................................9
CHƯƠNG 2: CÔNG NGHỆ VÀ KIẾN THỨC CĂN BẢN......................................3
2.1 Giới thiệu về một số ngôn ngữ lập trình web........................................................3
2.2 Tổng quan về hệ quản trị cơ sở dữ liệu SQL Server 2008.....................................4
2.2.1 Giới thiệu về hệ quản trị cơ sở dữ liệu SQL Server 2008......................................4
2.2.2. SQL là ngôn ngữ của cơ sở dữ liệu quan hệ.........................................................5
2.2.3. Vai trò của SQL...................................................................................................6
2.2.4 Một số bước xây dựng cơ sở dữ liệu.....................................................................7
2.2.5 Các thành phần....................................................................................................10
2.2.6 Các hàm thông dụng trong SQL Server.............................................................11
2.3 Ngôn ngữ lập trình...........................................................................................13
2.3.1. Lập trình hướng đối tượng.................................................................................13
2.3.2. Giới thiệu về ngôn ngữ trìnhC#..........................................................................14
2.3.3. Một số lệnh và hàm thường dùng.......................................................................15
2.3.4 Kiểu dữ liệu trong C#.........................................................................................16
2.4 Tool hỗ trợ lập trình.........................................................................................19
2.5 HTML và CSS.................................................................................................20
CHƯƠNG 3: PHÂN TÍCH BÀI TOÁN...................................................................22
3.1. Phân tích yêu cầu Website...............................................................................22
3.1.1 Tóm tắt hoạt động của hệ thống:.........................................................................22
3.2. Xác định yêu cầu của khách hàng.....................................................................23
3.2.1. Hệ thống hiện hành của cửa hàng......................................................................23
3.2.2. Hệ thống đề nghị................................................................................................23
CHƯƠNG 4: PHÂN TÍCH THIẾT KẾ HỆ THỐNG.............................................25
4.1 Phân tích các chức năng của hệ thống...............................................................25
4.1.1 Mô hình phân cấp chức năng..............................................................................25
4.1.2 Chức năng đăng ký thành viên............................................................................26
4.1.3 Chức năng đăng nhập..........................................................................................27
4.1.4 Chức năng đăng xuất...........................................................................................28
4.1.5 Chức năng xem thông tin sản phẩm....................................................................29
4.1.6 Các chức năng quản lý Sản Phẩm.......................................................................30
4.1.7 Chức năng đặt hàng.............................................................................................32
4.1.8 Chức năng đổi mật khẩu.....................................................................................33
4.2 Thiết kế các chức năng hệ thống.....................................................................35
4.3 Cách tổ chức dữ liệu và thiết kế chương trình cho trang Web.............................42
4.4 Sơ đồ mô hình quan hệ.....................................................................................44
4.5 Thiết kế giao diện.............................................................................................45
4.5.1 Giao diện người dùng..........................................................................................45
4.5.2 Giao diện Admin.................................................................................................51
CHƯƠNG 5: KẾT LUẬN.........................................................................................55
5.1 Nhận xét bản thân............................................................................................55
5.2 Kết quả đạt được..............................................................................................55
5.3 Những hạn chế.................................................................................................55
5.4 Hướng phát triển của đề tài...............................................................................55
TÀI LIỆU THAM KHẢO.........................................................................................56
DANH MỤC HÌNH VẼ

Hình 4.1 Sơ đồ phân cấp chứ năng Admin...................................................................25


Hình 4.2 Biểu đồ phân cấp chức năng khách hàng.......................................................26
Hình 4.3 Biểu đồ hoạt động đăng kí thành viên...........................................................27
Hình 4.4 Biểu đồ hoạt động đăng nhập vào hệ thống...................................................28
Hình 4.5 Biểu đồ hoạt động xem thông tin về sản phẩm..............................................29
Hình 4.6 Biểu đồ chức năng sửa thông tin sản phẩm...................................................30
Hình 4.7 Biểu đồ chức năng xoá sản phẩm..................................................................31
Hình 4.8 Biểu đồ chức năng thêm sản phẩm................................................................32
Hình 4.9 Biểu đồ chức năng đặt hàng..........................................................................33
Hình 4.10 Biểu đồ chức năng đổi mật khẩu.................................................................34
Hình 4.11 Use case tìm kiếm.......................................................................................35
Hình 4.12 Biểu đồ cộng tác chức năng tìm kiếm.........................................................35
Hình 4.13 Biểu đồ tuần tự chức năng tìm kiếm............................................................36
Hình 4.14 Use-case quản lý sản phẩm.........................................................................36
Hình 4.15 Biểu đồ cộng tác chức năng cập nhật..........................................................37
Hình 4.16 Biểu đồ tuần tự chức năng thêm sản phẩm mới...........................................37
Hình 4.17 Biểu đồ tuần tự chức năng sửa thông tin sản phẩm.....................................38
Hình 4.18 Biểu đồ tuần tự chức năng xóa sản phẩm....................................................39
Hình 4.19 Biểu đồ tuần tự chức năng đăng ký thành viên............................................40
Hình 4.20 Biểu đồ tuần tự chức năng đăng nhập.........................................................41
Hình 4.21 Sơ đồ mô hình quan hệ................................................................................44
Hình 4.22 Hình ảnh giao diện trang chủ......................................................................45
Hình 4.23 Hình ảnh giao diện trang list.......................................................................46
Hình 4.24 Hình ảnh giao diện trang chi tiết.................................................................47
Hình 4.25 Hình ảnh giao diện form đăng nhập............................................................48
Hình 4.26 Hình ảnh giao diện form đăng ký................................................................48
Hình 4.27 Hình ảnh giao diện giỏ hàng........................................................................49
Hình 4.28 Hình ảnh giao diện lịch sử mua hàng..........................................................49
Hình 4.29 Hình ảnh giao diện trang danh mục sản phẩm.............................................50
Hình 4.30 Hình ảnh giao diện trang quảng cáo............................................................50
Hình 4.31 Hình ảnh giao diện trang giới thiệu.............................................................51
Hình 4.32 Hình ảnh giao diện trang đăng nhập quản trị Admin...................................51
Hình 4.33 Hình ảnh giao diện trang admin..................................................................52
Hình 4.34 Hình ảnh giao diện trang quản lý đơn hàng.................................................52
Hình 4.35 Hình ảnh giao diện quản lý sản phẩm..........................................................53
Hình 4.36 Hình ảnh giao diện trang quản lý tin tức.....................................................53
Hình 4.37 Hình ảnh giao diện trang thay đổi mật khẩu................................................54
DANH MỤC BẢNG BIỂU

Bảng 4.1 Bảng giohang...................................................................................42


Bảng 4.2 Bảng hoadon....................................................................................42
Bảng 4.3 Bảng danhmuc.................................................................................43
Bảng 4.4 Bảng sanpham..................................................................................43
Bảng 4.5 Bảng thanhvien................................................................................43
Bảng 4.6 Bảng quantri.....................................................................................44
DANH MỤC CÁC TỪ VIẾT TẮT

STT Từ viết tắt Ý nghĩa Giải thích


DDL Data Difinition Language Ngôn ngữ định nghĩa dữ
1
liệu
DML Data Manipulation Ngôn ngữ DML
2
Language
IDE Integrated Development Môi trường phát triển
3
Environment tích hợp
4 UC Use Case Trường hợp sử dụng
GUI Graphic User Interface Giao diện người dùng đồ
5
họa
XML eXtensible Markup Ngôn ngữ Đánh dấu Mở
6
Language rộng
7 PC Personal Computer Máy tính cá nhân
LINQ Language Integrated Query Ngôn ngữ truy vấn tích
8
hợp
API Application Programming Giao diện lập trình ứng
9
Interface dụng
UML Unified Modeling Ngôn ngữ mô hình hóa
10
Language thống nhất
RCS Revision Control System Hệ thống điều khiểu xét
11
duyệt
CHƯƠNG 1: GIỚI THIỆU CHUNG
1.1 Đặt vấn đề

Công nghệ thông tin phát triển ngày càng hiện đại và đổi mới không ngừng.
Mạng Internet đang trở thành mạng truyền thông có sức ảnh hưởng lớn nhất, không
thể thiếu trong tất cả các hoạt động của con người trong việc truyền tải và trao đổi dữ
liệu. Chính vì lợi ích từ Internet đã thúc đẩy sự ra đời và phát triển của thương mại
điện tử làm biến đổi bộ mặt văn hóa cũng như nâng cao chất lượng cuộc sống của con
người. Các nhu cầu mua sắm và giải trí của con người đang tăng nhanh một cách đột
biến, đây là một trong những bài toán của các nhà kinh doanh làm sao có thể đáp ứng,
cải thiện theo sự biển đổi này. Để đáp ứng những nhu cầu đó của con người trên cơ sở
kế thừa những trang web bán hàng khác em đã xây dựng lên một Website bán giầy
dép qua mạng để đáp ứng nhu cầu mua sắm và giải trí của mọi người, giúp họ tiết
kiệm được thời gian, chi phí trong việc phải đi ra các shop, cửa hàng hay các chợ
truyền thống để mua và tìm kiếm sản phẩm. Thay vào đó chỉ việc ngồi ở nhà hay nơi
công sở…Với các thiết bị đã kết nối Internet mọi người có thể thỏa sức tìm kiếm, lựa
chon những sản phẩm mà mình yêu thích mọi lúc mọi nơi. Giúp cho người quản trị dễ
dàng trong việc phân quyển quản lý các đơn đặt hàng của khách hàng.

1.2 Mục tiêu của đề tài

Đề tài “Xây dựng Website bán hàng thời trang qua mạng” được xây dựng nhằm
đáp ứng các mục tiêu sau:

 Xây dựng được một giao diện đơn giản nhưng đầy đủ các chức năng thuận tiện,
dễ sử dụng.
 Hỗ trợ cửa hàng quản lý các hóa đơn tính tiền, chi phí, doanh thu, lợi nhuận
của cửa hàng một cách chính xác và hiệu quả.
 Giảm bớt công việc, thời gian cho cửa hàng trong việc quản lý các sản phẩm,
loại giầy dép mới ra.

1
 Giúp khách hàng có thể xem thông tin về sản phẩm một cách nhanh chóng, qua
đó có thể tạo ra những đơn hàng cho chính mình, giúp việc mua bán trở nên đơn
giản, nhanh chóng và thuận tiện.
 Quản trị tin tức dễ dàng, thông tin sản phẩm: hình ảnh, tên, mã, giá tiền và
thông tin mô tả.

1.3 Hướng giải quyết

Để xây dựng một website có tính thực tế và ứng dụng cao thì yêu cầu:

 Cần khảo sát hoạt động của khách hàng khi mua sản phẩm trên mạng, phân
tích, lựa chọn các thông tin phù hợp.
 Trên cơ sở các thông tin thu thập tiến hành xây dựng sơ đồ UseCase, sơ đồ
Sequence Diagram, Class Diagram.
 Thiết kế giao diện phải đảm bảo dễ sử dụng, đẹp mắt để thu hút khách hàng.
 Lập dự kiến xây dụng cơ sở dữ liệu cho website, phân tích được pham vi lưu
trữ, độ an toàn dữ liệu khi vận hành.

1.4 Giới hạn đề tài


 Chưa đề cập được vấn đề bảo mật, an toàn dữ liệu.
 Mặc dù đã cố gắng tìm hiểu công nghệ và mong muốn áp dụng PayPal, Ngân
Lượng và hệ thống. Song thời gian cũng như năng lực còn hạn chế nên website chưa
có được chức năng này mọi giao dịch, giao hàng đều đưa hàng và lấy tiền tại nhà
khách hàng, hoặc khách đến cửa hàng mua hàng và trả tiền trực tiếp.
 Số lượng sản phẩm còn chưa thể đáp ứng được nhu cầu của mọi người.
1.5 Bố cục báo cáo
Nội dung bài báo cáo gồm những phần sau:
 Chương 1: Giới thiệu chung
 Chương 2: Công nghệ và kiến thức căn bản
 Chương 3: Phân tích bài toán
 Chương 4: Phân tích thiết kế hệ thống
 Chương 5: Kết luận

2
CHƯƠNG 2: CÔNG NGHỆ VÀ KIẾN THỨC CĂN BẢN
2.1 Giới thiệu về một số ngôn ngữ lập trình web
ASP.NET:
 Tốc độ xử lý nhanh, hiệu quả cao.
 Chi phí giá thành thấp.
 Thời gian code và phát triển nhanh, đơn giản.
 Số lượng nhà cung cấp hosting nhiều, dễ lựa chọn.
 Số nhà cung cấp website nhiều, khả năng chọn lựa một trang web phù hợp tốt
hơn.
 Khả năng mở rộng và phát triển dễ dàng và nhanh chóng.
 Các công cụ và công nghệ hỗ trợ phong phú, đa dạng. Phát triển web trên nền
web 2.0. Sử dụng công nghệ Ajax làm cho quá trình duyệt web nhanh chóng, thân
thiện và an ninh hơn cho với người dùng.
ASP:
 Tốc độ xử lý rất chậm.
 Chi phí giá thành trung bình .
 Thời gian code và triển khai trung bình.
 Số lượng nhà cung cấp hosting không nhiều, vì vậy khó cho việc lựa chọn.
 Số nhà cung cấp website ít.
 Khả năng mở rộng và phát triển website khó khăn.
 Công cụ và công nghệ hỗ trợ ít, khó tìm.
Tổng kết: Đối với đa số website nên chọn ngôn ngữ phát triển website
ASP.NET/SQLServer vì giá thành tương đối, tốc độ xử lý nhanh, dễ lựa chọn nhà
cung cấp… Sau quá trình tìm hiểu, cân nhắc và dựa vào những hiểu biết của mình, em
đã lựa chọn ngôn ngữ ASP.NET/SQLServer để xây dựng website đồng thời kết hợp
với các công cụ:
 Hệ quản trị cơ sở dữ liệu MYSQL 5.1.36.
 Thiết kế giao diện bằng ngôn ngữ HTML và CSS.
 Sử dụng các công cụ hỗ trợ như: javascript, …

3
2.2 Tổng quan về hệ quản trị cơ sở dữ liệu SQL Server 2008
2.2.1 Giới thiệu về hệ quản trị cơ sở dữ liệu SQL Server 2008
SQL Server là hệ quản trị cơ sở dữ liệu quan hệ (RDBMS) do Microsoft phát
triển, hoạt động theo mô hình khách/chủ cho phép đồng thời cùng lúc có nhiều người
dùng truy xuất đến dữ liệu.
 Một số tính năng của SQL Server 2008:
 Truy cập tới cơ sở dữ liệu qua mạng
 Hỗ trợ mô hình Client/Server
 Kho dữ liệu (Data WareHouse)
 Tương thích với chuẩn ANSI/ISO SQL-92
 Hỗ trợ tìm kiếm Full-Text (Full-Text Search)
 Hỗ trợ tìm kiếm thông tin trực tuyến (Books Online)
 Các kiểu dữ liệu mới và các hàm thư viện làm việc với các kiểu dữ liệu này
như XML, các kiểu dữ liệu giá trị lớn (lưu ảnh, video,…)
 Hỗ trợ FileStream để thao tác với các đối tượng nhị phân lớn (BLOB)
 Languaged-Integrated Query (LINQ)
 Hỗ trợ DotNet 3.5
 Ngôn ngữ truy vấn dữ liệu: SQL Server sử dụng ngôn ngữ T-SQL
(Transact-SQL) để truy vấn dữ liệu. Các câu lệnh T-SQL được chia thành 3 nhóm:
 Các câu lệnh định nghĩa dữ liệu (DDL): gồm các lệnh CREATE, ALTER,
DROP định nghĩa, thay đổi, và hủy bỏ các đối tượng cơ sở dữ liệu như TABLE
(bảng), INDEX (chỉ mục), SEQUENCE (trình tự), VIEW (khung nhìn).
 Các câu lệnh thao tác dữ liệu (DML): gồm các lệnh SELECT, INSERT,
UPDATE cho phép thao tác trên đối tượng dữ liệu.
 Các câu lệnh điều khiển dữ liệu (DCL): được sử dụng trong việc cấp phát
hay hủy bỏ quyền của người sử dụng đối với các câu lệnh SQL hoặc trên các đối
tượng cơ sở dữ liệu. Gồm các câu lệnh: GRANT, REVOKE.
 Các công cụ của SQL Server 2008:

4
 Server SQL Configuration Manager: là công cụ đồ họa dùng để khởi động
và dừng server cơ sở dữ liệu
 SQL Server Management Studio: là công cụ đồ họa chính được nhà phát
triển sử dụng để thao tác với cơ sở dữ liệu SQL 2008
 Books Online: bộ tài liệu cho SQL Server 2008
SQL Server là một cơ sở dữ liệu Client/Server. Nó có hai chức năng chính:
 Chứa dữ liệu người dùng nhập vào.
 Xử lý các yêu cầu gửi tới thông qua ngôn ngữ truy vấn cơ sở dữliệu và trả
về các đối tượng trong hệ quản trị cơ sở dữ liệu SQL Server.
- Bảng (Table): Bảng là đơn vị lưu trữ dữ liệu chính trong cơ sở dữ liệu SQL Server,
đó là tập hợp dữ liệu có liên quan với nhau, là một đối tượng lưu trữ dữ liệu dưới
dạng hàng (Rows), cột (Columns). Các hàng trong bảng người ta gọi là các bản ghi
chứa dữ liệu (Record), các cột là các trường chứa các thuộc tính của bảng.
- Khung nhìn dữ liệu (View): Về mặt logic, bảng ảo giống như một bảng thực, nó
không chứa bảng vật lý nào mà nó chỉ là kết quả của việc thực hiện các câu lệnh
Select trên những bảng thực và dữ liệu của nó sẽ bị mất đi khi không thực hiện các
câu lệnh đó.
- Chỉ số của bảng (Index): Chỉ số là một cấu trúc được tạo ra để lưu trữ thông tin về vị
trí các bản ghi trong một bảng dữ liệu nhằm cải thiện tốc độ truy xuất dữ liệu. Một chỉ
số được tạo nên trên một hay nhiều bảng, mọi sự thay đổi dữ liệu trong bảng đều
được tự động cập nhật với các chỉ số có liên quan trong suốt quá trình sử dụng.
- Thủ tục lưu trữ (Store procedure): Là một khối các câu lệnh truy vấn cơ sở dữ liệu,
được lưu trữ trong một thủ tục và có tham số vào cũng như giá trị trả về khi thủ tục đó
được thực hiện.
2.2.2 SQL là ngôn ngữ của cơ sở dữ liệu quan hệ
SQL (Structured Query Language) là công cụ sử dụng để tổ chức, quản lý và
truy xuất dữ liệu được lưu trữ trong các cơ sở dữ liệu. SQL là một hệ thống ngôn ngữ
bao gồm tập các câu lệnh sử dụng để tương tác với cơ sở dữ liệu quan hệ.
Khả năng của SQL vượt xa so với một công cụ truy xuất dữ liệu, mặc dù đây là
mục đích ban đầu khi SQL được xây dựng nên và truy xuất dữ liệu vẫn còn là một

5
trong những chức năng quan trọng của nó. SQL được sử dụng để điều khiển tất cả các
chức năng mà một hệ quản trị cơ sở dữ liệu cung cấp cho người dùng bao gồm:
- Định nghĩa dữ liệu: SQL cung cấp khả năng định nghĩa các cơ sở dữ liệu, các
cấu trúc lưu trữ và tổ chức dữ liệu cũng như mối quan hệ giữa các thành phần dữ liệu.
- Truy xuất và thao tác dữ liệu: Với SQL người dung có thể dễ dàng thực hiện
các thao tác truy xuất, bổ sung, cập nhật, và loại bỏ dữ liệu trong các cơ sở dữ liệu.
- Điều khiển truy cập: SQL có thể được sử dụng để cấp phát và kiểm soát các
thao tác của người sử dụng trên dữ liệu, đảm bảo sự an toàn cho cơ sở dữ liệu.
- Đảm bảo toàn vẹn dữ liệu: SQL định ngĩa các ràng buộc toàn vẹn trong cơ sở
dữ liệu. Nhờ đó đảm bảo tính hợp lệ và chính xác của dữ liệu trước các thao tác cập
nhật cũng như các lỗi của hệ thống.
Như vậy, có thể nói SQL là một ngôn ngữ hoàn thiện được sử dụng trong các
hệ thống cơ sở dữ liệu và là một thành phần không thể thiếu trong các hệ quản trị cơ
sở dữ liệu.
Mặc dù, SQL không phải là một ngôn ngữ lập trình như C, C++, Java,…song
các câu lệnh mà SQl cung cấp có thể được nhúng vào trong các ngôn ngữ lập trình
nhằm xây dựng các ứng dụng tương tác với cơ sở dữ liệu.
Khác với các ngôn ngữ lập trình quen thuộc SQL là ngôn ngữ có tính khai báo.
Với SQL, người dùng chỉ cần mô tả các yêu cầu cần phải thực hiện trên cơ sở dữ liệu
mà không cần phải chỉ ra cách thức thực hiện các yêu cầu như thế nào. Chính vì vậy,
SQL là ngôn ngữ dễ tiếp cận và dễ sử dụng.
2.2.3 Vai trò của SQL
Bản thân SQL không phải là một hệ quản trị cơ sở dữ liệu, nó không thể tồn tại
độc lập.
-SQL thực sự là một phần của hệ quản trị cơ sở dữ liệu, nó xuất hiện trong các
hệ quản trị cơ sở dữ liệu với vai trò ngôn ngữ và là công cụ giao tiếp giữa người sử
dụng và hệ quản trị cơ sở dữ liệu.
-Trong hầu hết các hệ quản trị cơ sở dữ liệu quan hệ, SQL có những vai trò như
sau:

6
 SQL là ngôn ngữ truy vấn có tính tương tác: Người sử dụng có thể dễ dàng
thông qua các trình tiện ích để gửi các yêu cầu dưới dạng các câu lệnh SQL đến cơ sở
dữ liệu và nhận kết quả trả về từ cơ sở dữ liệu.
 SQL là ngôn ngữ lập trình cơ sở dữ liệu: Các lập trình viên có thể nhúng các
câu lệnh SQL vào trong ngôn ngữ lập trình để xây dựng nên các chương trình ứng
dụng giao tiếp với cơ sở dữ liệu.
 SQL là ngôn ngữ quản trị cơ sở dữ liệu: Thông qua SQL, người quản trị cơ
sở dữ liệu có thể quản lý được cơ sở dữ liệu, định nghĩa được các cấu trúc lưu trữ dữ
liệu, điều khiển truy cập cơ sở dữ liệu,…
 SQL là ngôn ngữ cho các hệ thống khách/chủ (Client/Server): Trong các hệ
thống cơ sở dữ liệu khách/chủ, SQL được sử dụng như là công cụ để giao tiếp giữa
các trình ứng dụng phía máy khách với máy chủ cơ sở dữ liệu.
 SQL là ngôn ngữ truy cập dữ liệu trên Internet: Cho đến nay, hầu hết các
máy chủ Web cũng như các máy chủ trên Internet sử dụng SQL với vai trò là ngôn
ngữ để tương tác với dữ liệu trong các cơ sở dữ liệu.
 SQL là ngôn ngữ cơ sở dữ liệu phân tán: Đối với các hệ quản trị cơ sở dữ
liệu phân tán, mỗi một hệ thống sử dụng SQL để giao tiếp với các hệ thống khác trên
mạng, gửi và nhận các yêu cầu truy xuất dữ liệu với nhau.
 SQL là ngôn ngữ sử dụng cho các cổng giao tiếp cơ sở dữ liệu: Trong một hệ
thống mạng máy tính với nhiều hệ quản trị cơ sở dữ liệu khác nhau, SQL thường
được sử dụng như là một chuẩn ngôn ngữ để giao tiếp giữa các hệ quản trị cơ sở dữ
liệu.
2.2.4 Một số bước xây dựng cơ sở dữ liệu
Các câu lệnh thao tác dữ liệu trong SQL không những chỉ sử dụng để truy vấn dữ liệu
mà còn để thay đổi và cập nhật dữ liệu trong cơ sở dữ liệu.
 Thêm dữ liệu: Dữ liệu trong các bảng được thể hiện dưới dạng các dòng (bản
ghi). Để bổ sung thêm các dòng dữ liệu vào một bảng, ta sử dụng câu lệnh INSERT.
Hầu hết các hệ quản trị CSDL dựa trên SQL cung cấp các cách dưới đây để thực hiện
thao tác thêm dữ liệu cho bảng: Thêm từng dòng dữ liệu với mỗi câu lệnh INSERT.

7
Đây là các sử dụng thường gặp nhất trong giao tác SQL. Thêm nhiều dòng dữ liệu
bằng cách truy xuất dữ liệu từ các bảng dữ liệu khác.
 Thêm từng dòng dữ liệu: Để bổ sung một dòng dữ liệu mới vào bảng, ta sử
dụng câu lệnh INSERT với cú pháp như sau:

INSERT INTO tên_bảng [(danh_sach _cột)] VALUES (danh_sach _gia trị)

Trong câu lệnh INSERT, danh mục sản phẩm cột ngay sau tên bảng không cần thiết
phải chỉ định nếu giá trị các trường của bản ghi mới được chỉ định đầy đủ trong danh
sách. Trong trường hợp này, thứ tự các giá trị trong danh mục sản phẩm trị phải bằng
với số lượng các trường của bảng cần bổ sung dữ liệu cũng như phải tuân theo đúng
thứ tự của các trường như khi bảng được định nghĩa. Trong trường hợp chỉ nhập giá
trị cho một số cột trong bảng, ta phải chỉ định danh sản phẩm các cột cần nhập dữ liệu
ngay sau tên bảng. Khi đó, các cột không được nhập dữ liệu sẽ nhận giá trị mặc định
(nếu có) hoặc nhận giá trị NULL (nếu cột cho phép chấp nhận giá trị NULL). Nếu
một cột không có giá trị mặc định và không chấp nhận giá trị NULL mà không đuợc
nhập dữ liệu, câu lệnh sẽ bị lỗi.

 Thêm một tập các dòng dữ liệu vào bảng: Một cách sử dụng khác của câu
lệnh INSERT được sử dụng để bổ sung nhiều dòng dữ liệu vào một bảng, các dòng
DL này được lấy từ một bảng khác thông qua câu lệnh SELECT cách này, các giá trị
dữ liệu được bổ sung vào bảng không được chỉ định tường minh mà thay vào đó là
một câu lệnh SELECT truy vấn dữ liệu từ bảng khác.

Cú pháp câu lệnh INSERT có dạng như sau:

INSERT INTO tên_bảng [(danh_sp _cột)] câu_lệnh_SELECT

 Cập nhật dữ liệu

Câu lệnh UPDATE trong SQL được sử dụngđể cập nhật dữ liệu trong các bảng. Câu
lệnh này có cú pháp như sau:

UPDATE tên_bảng

SET tên_cột = biểu_thức

8
[tên_cột_k = biểu_thức_k]

[FROM danh_sp _bảng]

[WHERE điều_kiện]

Sau UPDATE là tên của bảng cần cập nhật dữ liệu. Một câu lệnh UPDATE có thể
cập nhật dữ liệu cho nhiều cột bằng cách chỉ định các danh sản phẩm tên cột và biểu
thức tương ứng sau từ khoá SET. Mệnh đề WHERE trong câu lệnh UPDATE được sử
dụng để chỉ định các dòng dữ liệu chịu tác động của câu lệnh (nếu không chỉ định,
phạm vi tác động của câu lệnh được hiểu là toàn bộ các dòng trong bảng).

 Xóa dữ liệu

Để xoá dữ liệu trong một bảng, ta sử dụng câu lệnh DELETE. Cú pháp của câu
lệnh này như sau:

DELETE FROM tên_bảng

[FROM danh_sp _bảng]

[WHERE điều_kiện]

Trong câu lệnh này, tên của bảng cần xoá dữ liệu được chỉ định sau DELETE
FROM. Mệnh đề WHERE trong câu lệnh được sử dụng để chỉ định điều kiện đối với
các dòng dữ liệu cần xoá.Nếu câu lệnh DELETE không có mệnh đề WHERE thì toàn
bộ các dòng dữ liệu trong bảng đều bị xoá.

 Xoá dữ liệu khi điều kiện liên quan đến nhiều bảng: Nếu điều kiện trong câu lệnh
DELETE liên quan đến các bảng không phải là bảng cần xóa dữ liệu, ta phải sử dụng
thêm mệnh đề FROM và sau đó là danh sách tên các bảng đó. Trong trường hợp này,
trong mệnh đề WHERE ta chỉ định thêm điều kiện nối
 Sử dụng truy vấn con trong câu lệnh DELETE

9
2.2.5 Các thành phần

Mỗi CSDL có các đối tượng sau:

 Table: là đối tượng chính của cơ sở dữ liệu lưu trữ dữ liệu cần quản lý. Mỗi
table có một hay nhiều Field. Mỗi Field ứng với một loại dữ liệu cần lưu trữ.

Table còn có các thành phần liên quan như:

 Ràng buộc(Constraint): là các chỉ định rành buộc dữ liệu trong bảng hoặc các
bảng khác nhau theo một quy tắc nào đó.
 Bẫy lỗi(Triggers): thường chứa các mã lệnh kiểm tra dữ liệu, có tính năng tự
động thực hiện khi có hành động nào đó xảy ra đối với dữ liệu trong Table như Insert,
Update, Delete.
 Chỉ mục(Indexs): Hỗ trợ việc sắp xếp và tìm kiếm nhanh các thông tin trên
Table.
 Diagram(Sơ đồ quan hệ): Thể hiện mối quan hệ dữ liệu giữa các Table với
nhau.
 Views (Khung nhìn hay table ảo):Là đối tượng dùng hiển thị dữ liệu được rút
trích, tính toán từ các Table theo nhu cầu của người dùng.
 Stored Procedure (Thủ tục nội): Chứa các lệnh T-SQL dùng thực hiện một số
tác vụ nào đó. Stored Procedure có thể nhận và truyền tham số, được biên dịch
trước, do đó thời gian thực hiện nhanh khi được gọi. Có nhiều Stored Procedure hệ
thống được định nghĩa với tiền tố “sp_” có nhiệm vụ thu nhập thông tin từ các
bảng hệ thống và rất có ích cho việc quản trị cơ sở dữ liệu.
 Users: Chứa danh sản phẩm User sử dụng cơ sở dữ liệu. Người quản trị hệ
thống cao nhất có User Name là bdo, tên đăng nhập (Login Name) hệ thống mặc định
là sa. Tài khoản sa luôn tồn tại và không thể bỏ đi.
 Roles: Các quy định vai trò và chức năng của User trong hệ thống SQL Server.
 Rules: Các qui tắc ràng buộc dữ liệu được lưu trữ trên Table.
 Defaults: Các khai báo giá trị mặc định.
 User Defined Data Table: Kiểu dữ liệu do người dùng tự định nghĩa.

10
2.2.6 Các hàm thông dụng trong SQL Server
Trong SQL server có 2 loại hàm: một loại là được xây dựng sẵn trong SQL Server
(built-in) và một loại do người dùng tự định nghĩa (user-defined).
Các hàm Built-In được chia làm 3 nhóm:
Rowset Functions: Loại này thường trả về một object và được đối xử như một table.
Ví Dụ: Thực hiện các lệnh UPDATE, INSERT, DELETE thông qua truy vấn:
“UPDATE Person SET FirstName = 'Nina'
WHERE LastName = 'Rasmussen'”
“INSERT INTO Persons
VALUES ('Hetland', 'Camilla', 'Hagabakka 24', 'Sandnes')”
“DELETE FROM Person WHERE LastName = 'Rasmussen'”
Aggregate Functions: Loại này làm việc trên một số giá trị và trả về một giá trị đơn
hay là các giá trị tổng. Ví dụ: các hàm tính toán:
 AVG(<column>)
 Hàm AVG trả về giá trị trung bình tính theo cột được chỉ định của các dòng
được chọn. Các giá trị NULL sẽ không được xét đến khi tính giá trị trung bình.

- Ví dụ: Tính số tuổi trung bình của những người có tuổi trên 20

SELECT AVG(Age) FROM Persons WHERE Age > 20

COUNT (): Trả về số lượng các mục trong một nhóm.

 MAX(<column>)
 Hàm MAX trả về giá trị lớn nhất trong cột. Các giá trị NULL sẽ không được
xét đến.

- Ví dụ: SELECT MAX (Age) FROM Persons

- Kết quả trả về: 45

 MIN(<column>)
 Hàm MIN trả về giá trị nhỏ nhất trong cột. Các giá trị NULL sẽ không được
xét đến.

- Ví dụ: SELECT MIN (Age) FROM Persons

11
- Kết quả trả về: 19

 SUM (<column>)
 Hàm SUM trả về tổng giá trị của cột. Các giá trị NULL sẽ không được xét
đến.

- Ví dụ: Tìm tổng số tuổi của tất cả những người có trong bảng:

SELECT SUM(Age) FROM Persons

- Kết quả trả về: 98

- Ví dụ: Tìm tổng số tuổi của tất cả những người có tuổi lớn hơn 20:

SELECT SUM (Age) FROM Persons WHERE Age > 20

- Kết quả trả về: 79

Scalar Functions: Loại này làm việc trên một giá trị đơn và trả về một giá trị đơn.
Trong loại này lại chia làm nhiều loại nhỏ như các hàm về toán học, về thời gian, xử
lý kiểu dữ liệu String,…Ví dụ:
MONTH('2002-09-30'): Trả về tháng 9.
DAYOFMONTH(date): Trả về số ngày trong tháng.
Ascii(str): Trả về giá trị ASCII của ký tự đầu tiên trong chuỗi str.
Char(int): Chuyển đổi một giá trị Ascii sang ký tự.
LEFT(str,n): Trả về n ký tự, bắt đầu từ vị trí đầu tiên của chuỗi str.
LEN(str): Trả về số ký tự của, trừ khoảng trắng cuỗi chuỗi str.
Các hàm User-Defined (được tạo ra bởi câu lệnh CREATE FUNCTION và phần
body thường được gói trong cặp lệnh BEGIN...END) cũng được chia làm các nhóm
như sau:
Scalar Functions: Loại này cũng trả về một giá trị đơn bằng câu lệnh RETURNS. Ví
dụ : Chuyển số hệ thập phân sang nhị phân:
CREATE FUNCTION [dbo].[udf_bin_me] (@decNumber int)
RETURNS varchar(200)
as
BEGIN

12
DECLARE @BinNumber VARCHAR(200)
SET @BinNumber = '' ''
WHILE @decNumber <> 0
BEGIN
SET @BinNumber = SUBSTRING('0123456789', (@decNumber % 2) + 1,1) +
@BinNumber
SET @decNumber = @decNumber / 2
END
RETURN @BinNumber
END
Table Functions: Loại này trả về một table.

2.3 Ngôn ngữ lập trình


2.3.1 Lập trình hướng đối tượng
Lập trình hướng đối tượng (gọi tắt là OOP-Object Oriented Programming), là kĩ thuật
lập trình hỗ trợ công nghệ đối tượng. OOP được xem là giúp tăng năng suất, đơn giản
hóa độ phức tạp khi bảo trì cũng như mở rộng website bằng cách cho phép lập trình
viên tập trung vào các đối tượng website ở bậc cao hơn. Ngoài ra, nhiều người còn
cho rằng OOP dễ tiếp thu hơn cho những người mới học về lập trình hơn là các
phương pháp trước đó.

Một cách giản lược, đây là khái niệm và là một nỗ lực nhằm giảm nhẹ các thao tác
viết mã cho người lập trình, cho phép họ tạo ra các ứng dụng mà các yếu tố bên
ngoài có thể tương tác với các chương trình đó giống như là tương tác với các đối
tượng vật lý.

Những đối tượng trong một ngôn ngữ OOP là các kết hợp giữa mã và dữ liệu mà
chúng được nhìn nhận như là một đơn vị duy nhất. Mỗi đối tượng có một tên riêng
biệt và tất cả các tham chiếu đến đối tượng đó được tiến hành qua tên của nó.Như
vậy, mỗi đối tượng có khả năng nhận vào các thông báo, xử lý dữ liệu (bên trong
của nó) và gửi ra hay trả lời đến các đối tượng khác hay đến môi trường.

13
2.3.2 Giới thiệu về ngôn ngữ trìnhC#
Để xây dựng website quản lý, ngoài hệ quản trị cơ sở dữ liệu SQL Server 2008, tác
giả còn sử dụng công cụ lập trình C# để xây dựng website.

Sau khi đánh giá và so sánh ưu nhược điểm của từng ngôn ngữ, tác giả lựa chọn sử
dụng ngôn ngữ C# để xây dựng code nguồn chương trình.

C# là một ngôn ngữ lập trình hướng đối tượng được phát triển bởi Microsoft, là phần
khởi đầu cho kế hoạch NET của họ. Microsoft phát triển C# dựa trên C++ và Java. C#
được miêu tả là ngôn ngữ có được sự cân bằng giữa C++, Visual Basic, Delphi và Java.

C# được thiết kế chủ yếu bởi Anders Hejlsberg kiến trúc sư website nổi tiếng với các
dự án website Turbo Pascal, Delphi, J++, WFC.

C# là ngôn ngữ lập trình phản ánh trực tiếp nhất đến .NET Framework mà tất cả các
chương trình .NET chạy, và nó phụ thuộc mạnh mẽ vào Framework này. Mọi dữ liệu
cơ sở đều là đối tượng, được cấp phát và hủy bỏ bởi trình dọn rác Garbage-Collector
(GC), và nhiều kiểu trừu tượng khác chẳng hạn như class, delegate, interface,
exception, v.v, phản ánh rõ ràng những đặc trưng của .NET runtime.

Ưu điểm

 C# được kế thừa những ưu điểm của C/C++, bỏ đi những dư thừa không cần
thiết gây khó khăn cho người dùng.
 Câu lệnh C# đơn giản, ít từ khóa.
 Tính năng debug rất thuận tiện.
 Ngôn ngữ lập trình C# được đánh giá là dễ học và kết hợp được nhiều ưu điểm
của các ngôn ngữ lập trình hướng đối tượng Java và C++. Do đó ngôn ngữ C# đang
được ưa chuộng nhất.
 Ngôn ngữ C# là cơ sở để phát triển các ứng dụng Windows form, ASP.NET,
Web service,…
 Hỗ trợ nhiều thư viện hàn có sẵn giúp cho người lập trình lấy hàm dễ dàng và
thuận tiện.

14
Nhược điểm

 C# chỉ có thể chạy trên nền Windows và .NET Framework. Vì vậy nó hạn chế
phạm vi các ứng dụng của C#. Đó là nhược điểm lớn nhất của C# với các ngôn ngữ
khác.

2.3.3 Một số lệnh và hàm thường dùng


Hàm khởi tạo

Hàm khởi tạo (Constructor) làm một phương thức đặc biệt dùng để tạo ra đối
tượng của một lớp.

Đặc điểm của hàm khởi tạo:

 Trùng với tên của lớp.


 Không trả về kiểu dữ liệu.
 Có đối số hoặc không có đối số.
 Nếu không viết phương thức khởi tạo, trình biên dịch cung cấp một phương
thức khởi tạo mặc định để khởi tạo đối tượng.
 Khởi tạo các trường (field) của lớp bằng 0 hoặc false hoặc null tùy theo kiểu
dữ liệu của field.

Hàm khởi tạo tĩnh

 Hàm khởi tạo tĩnh (static constructor) được tự động thực thi để khởi tạo các
các biến tĩnh (class variable).
 Static constructor được thực thi trước khi bất kỳ một đối tượng nào của lớp
được khởi tạo.
 Static constructor được thực thi trước khi một static variable hay static method
nào của lớp được gọi.
 Static constructor chỉ được gọi một lần duy nhất.
 Static constructor không chứa bất kỳ tham số nào.

Hàm hủy

15
Mỗi đối tượng khi được tạo ra sẽ được cấp phát một vùng nhớ nào đó, do vùng nhớ là
có hạn nên cần thiết phải giải phóng các đối tượng không dùng nữa để giành bộ nhớ
các các đối tượng khác. Phương thức hủy (Desconstructor) là phương thức dùng để
giải phóng vùng nhớ của một đối tượng. Nó có các đặc điểm sau:

 Đây là phương thức đặc biệt được tự động gọi để giải phóng vùng nhớ của đối
tượng khi đối tượng không được sử dụng.
 Mỗi một lớp chỉ có duy nhất một phương thức hủy.
 Phương thức hủy không thể kế thừa và không thể gọi một cách tường minh.
 Trùng với tên của lớp và thêm ký tự “ ~” đằng trước tên phương thức hủy.
2.3.4 Kiểu dữ liệu trong C#

Kiểu dữ liệu (data type) là một tập hợp gồm các nhóm loại dữ liệu có cùng đặc tính,
cách lưu trữ của dữ liệu và cách thao tác xử lý trên trường dữ liệu đó; nhằm mục đích
phân loại các loại dữ liệu.Trong C#, một biến (variable) khi khởi tạo lên đã được chỉ
định một kiểu dữ liệu xác định cho nó.

Các kiểu dữ liệu trong C#

 C# chia thành hai tập hợp kiểu dữ liệu chính:


 Kiểu xây dựng sẵnmà ngôn ngữ cung cấp cho người lập trình.
 Kiểu được người dùng định nghĩado người lập trình tạo ra.
 C# phân tập hợp kiểu dữ liệu này thành hai loại:
 Kiểu dữ liệu giá trị (value): Một biến (variable) khi được khai báo với kiểu dữ
liệu tham trị thì vùng nhớ của nó sẽ chứa giá trị của dữ liệu. Danh mục kiểu dữ liệu
tham trị: bool, byte, char, decimal, double, enum, float, int, long, sbyte, short, struct,
uint, ulong, ushort.
 Kiểu dữ liệu tham chiếu (reference): Khác với kiểu dữ liệu tham trị, kiểu dữ
liệu tham chiếu chỉ lưu trữ địa chỉ tham chiếu tới vùng nhớ chứa giá trị thật sự.

Bạn có thể chuyển đổi từ kiểu dữ liệu này sang kiểu dữ liệu khác qua việc boxing và
unboxing.

Các kiểu dữ liệu xây dựng sẵn:

16
 Object: kiểu dữ liệu cơ bản của tất cả các kiểu khác.
 String: Được sử dụng để lưu trữ những giá trị kiểu chữ cho biến.
 Int: Sử dụng để lưu trữ giá trị kiểu số nguyên.
 Byte: Sử dụng để lưu trữ giá byte.
 Float: Sử dụng để lưu trữ giá trị số thực.
 Bool: Cho phép một biến lưu trữ giá trị đúng hoặc sai.
 Char: Cho phép một biến lưu trữ một ký tự.
 Decimal: Kiểu dữ liệu tiền tệ.

Tất cả các kiểu dữ liệu xây dựng sẵn là kiểu dữ liệu giá trị ngoại trừ các đối tượng và
chuỗi. Và tất cả các kiểu do người dùng định nghĩa ngoại trừ kiểu struct đều là kiểu
dữ liệu tham chiếu.

Biến và Hằng

 Biến

Một biến là một vùng lưu trữ với một kiểu dữ liệu. Để tạo một biến chúng ta phải khai
báo kiểu của biến và gán cho biến một tên duy nhất.Biến có thể được khởi tạo giá trị
ngay khi được khai báo, hay nó cũng có thể được gán một giá trị mới vào bất cứ lúc
nào trong chương trình.

Các biến trong C# được khai báo theo công thức như sau:

 AccessModifier DataType VariableName;

Trong đó:

- AccessModifier: Xác định ưu tiên truy xuất tới biến.


- Datatype: Định nghĩa kiểu lưu trữ dữ liệu của biến.
- VariableName: Là tên biến.
- Cấp độ truy xuất tới biến được mô tả như bảng dưới đây:
Ví dụ bạn khai báo một biến kiểu int:

int bien1 ;

Bạn có thể khởi gán ngay cho biến đó trong lúc khai báo:

17
int bien1 = 9 ;

Hoặc có thể gán giá trị sau khi khai báo như sau:

int bien1 ;

bien1 = 9;

Cách khai báo biến tương ứng với các kiểu dữ liệu:

object: object obj = null;


string: string str = ”Welcome”;
int: int ival = 12;
byte: byte val = 12;
float: float val = 1.23F;
bool: bool val1 = false;
char: char cval = ’a’;
 Hằng

Hằng cũng là một biến nhưng giá trị của hằng không thay đổi. Biến là công cụ
rất mạnh, tuy nhiên khi làm việc với một giá trị được định nghĩa là không thay đổi, ta
phải đảm bảo giá trị của nó không được thay đổi trong suốt chương trình.
Ví dụ, khi lập một chương trình thí nghiệm hóa học liên quan đến nhiệt độ sôi,
hay nhiệt độ đông của nước, chương trình cần khai báo hai biến là DoSoi và DoDong,
nhưng không cho phép giá trị của hai biến này bị thay đổi hay bị gán.
Hằng được phân thành ba loại:
 Giá trị hằng (literal).
 Biểu tượng hằng (symbolic constants).
 Kiểu liệu kê (enumerations).

18
2.4 Tool hỗ trợ lập trình

DotNetBar Suite cho Windows Forms là hộp công cụ gồm 87 thành phần tuyệt
vời cho việc tạo ra giao diện người dùng chuyên nghiệp một cách dễ dàng bằng cách
sử dụng Visual Studio 2005 đến năm 2013. Trong hơn 10 năm DotNetBar đang giúp
các nhà phát triển như bạn tạo kiểu dáng đẹp hình thức chuyên nghiệp Windows
(WinForms) giao diện người dùng một cách dễ dàng chưa từng có. DotNetBar là
thành phần đầu tiên của thế giới để giới thiệu đầy đủ tính năng Office 2013, Office
2010, Windows 7 và Office 2007 điều khiển Ribbon phong cách, đầu tiên cung cấp
hỗ trợ đầy đủ Theme Windows XP,…

Công cụ TreeGX trong DotNetBar giúp kiểm soát dữ liệu phân cấp mới một
cách trực quan hấp dẫn với TreeGX . Bạn có thể hình dung cây quyết định, phân cấp,
tạo ra bản đồ tâm trí hoặc chụp và tổ chức ý tưởng, tất cả mọi thứ trong ứng dụng của
bạn sử dụng TreeGX.

DotNetBar là thành phần đầu tiên giới thiệu các điều khiển giao diện người
dùng Metro, thanh công cụ, thanh trượt, hình thức… Hoàn toàn tự động với chủ đề
màu sắc không giới hạn, làm cho các ứng dụng sử dụng giao diện người dùng theo

19
phong cách mới nhất hiện nay: Office 2013, Office 2010, Windows 7 và Office 2007
Ribbon, Backstage ứng dụng Menu, hỗ trợ Windows Vista Glass, nhóm tab, menu,
KeyTips đa cấp, hoàn chỉnh Quick Access Toolbar (QAT) tùy biến và hỗ trợ đầy đủ
cho Ribbon đơn Tabs.

2.5 HTML và CSS


2.5.1 HTML
HTML (tiếng Anh, viết tắt của HyperText Markup Language , hay là “Ngôn
ngữ Đánh dấu Siêu văn bản ”) là một ngôn ngữ đánh dấu được thiết kế ra để tạo nên
các trang web với các mẩu thông tin được trình bày trên World Wide Web. HTML
được định nghĩa như là một ứng dụng đơn giản của SGML và đươc sử dụng trong các
tổ chức cần đến các yêu cầu xuất bản phức tạp. HTML đã trở thành một chuẩn Internet
do tổ chức World Wide Web Consortium (W3C) duy trì. Phiên bản chính thức mới
nhất của HTML là HTML 4.01 (1999). Sau đó, các nhà phát triển đã thay thế nó bằng
XHTML. Hiện nay, HTML đang được phát triển tiếp với phiên bản HTML5 hứa hẹn
mang lại diện mạo mới cho Web.  
Bằng cách dùng HTML động hoặc Ajax, lập trình viên có thể được tạo ra và xử lý bởi
số lượng lớn các công cụ, từ một chương trình soạn thảo văn bản đơn giản – có thể gõ
vào ngay từ những dòng đầu tiên – cho đến những công cụ xuất bản WYSIWYG
phức tạp.
HTML không phải là ngôn ngữ lập trình, nó là ngôn ngữ trình bày.
Đánh dấu:
 Đánh dấu có cấu trúc miêu tả mục đích của phần văn bản (ví dụ :
<h1>Trình</h1> sẽ điều khiển phần mềm đọc hiển thị “Trình” là để mục cấp một ).
 Đánh </b> sẽ hiện thị in đậm đoạn văn bản “handsome”, chú ý: cách dùng đánh
dấu trình bày này bây giờ không còn được khuyên dùng mà nó được thay thế bằng
cách dùng CSS để định dạng ).
 Đánh dấu liên kết ngoài chứa phần liên kết từ trang này đến trang kia (ví dụ , <a
href=” http://www.google.com/”>Link</a> sẽ hiện thị từ Link như một liên kết ngoài
đến một URL) cụ thể, dấu trình bày miêu tả phần hiện hình trực quan của phần văn
bản bất kể chức năng của nó là gì (ví dụ, <b>handsome.

20
 Các phần từ thành phần điều khiển giúp tạo ra các đối tượng (ví dụ: các nút và
các danh sách ).

Tách phần trình bày và nội dung:


Nỗ lực tách phần nội dung ra khỏi phần hình thức trình bày của trang HTML
đã đưa đến sự xuất hiện của các chuẩn mới như XHTML. Các chuẩn này nhấn mạnh
vào việc sử dụng thẻ đánh dấu vào việc xác định cấu trúc tài liệu như phần đề mục,
đoạn văn, khối văn bản trích dẫn và các bảng, chứ không khuyên dùng các thẻ đánh
dấu mang tính chất trình bày trực quan, như <font>, <b> (in đậm), và <i> (in
nghiêng). Những mã mang tính chất trình bày đó đã được loại bỏ khỏi HTML 4.01
Strict và các đặc tả XHTML nhằm tạo điều kiện cho CSS. CSS cung cấp một giải
pháp giúp tách cầu trúc HTML ra khỏi phần trình bày nội dung của nó.

2.5.2 CSS

Trong tin học, các tập tin định kiểu theo tầng – dịch từ tiêng Anh là Cascading
style Sheets (CSS) – được dùng để miêu tả cách trình bày các tài liệu viết bằng ngôn
ngữ HTML và XHTML. Ngoài ra ngôn ngữ định kiểu theo tầng cũng có thể dùng cho
XML, SVG, XUL. Các đặc điểm kỹ thuật của CSS được duy trì bởi World Wide Web
Consortium (W3C). Thay vì đặt các thẻ qui định kiểu dáng cho văn bản HTML(hoặc
XHTML) ngay trong nội dung của nó, bạn nên sử dụng CSS.
Tác dụng của CSS:
 Hạn chế tối thiểu việc làm rối mã HTML của trang Web bằng các thẻ quy
định kiểu dáng (chữ đậm, chữ in nghiêng, chữ có gạch chân, chữ màu), khiến mã
nguồn cảu trang Web được gọn gang hơn, tách nội dung của trang Web và định dạng
hiển thị,dễ dàng cho việc cập nhật nội dung văn bản.
 Tạo ra các kiểu dáng có thể áp dụng cho nhiều trang Web, giúp tránh những
lặp lại việc định dạng cho các trang Web giống nhau.

21
CHƯƠNG 3: PHÂN TÍCH BÀI TOÁN
Trong chương này chúng ta sẽ phân tích các yêu cầu của đề tài như việc tóm tắt
hoạt động của hệ thống mà đồ án sẽ được ứng dụng, phạm vi ứng dụng của đề tài và
đối tượng sử dụng, mục đích của dự án. Xác định yêu cầu của khách hàng. Xuất phát
từ hệ thống hiện hành của cửa hàng cùng với yêu cầu của khách hàng để vạch ra được
yêu cầu hệ thống cần xây dựng như việc thiết kế giao diện, yêu cầu về chức năng và
yêu cầu về bảo mật. Trong chương này chúng ta đi xây dựng một số biểu đồ Use
Case, biểu đồ hoạt động của các chức năng trong hệ thống và thông tin cơ sở dữ liệu
của chương trình.
3.1. Phân tích yêu cầu Website
3.1.1 Tóm tắt hoạt động của hệ thống:
 Là một Website chuyên bán các sản phẩm về giầy dép …cho các cá nhân và
doanh nghiệp.
 Là một Website động, các thông tin được cập nhật theo định kỳ.
 Người dùng truy cập vào Website có thể xem, tìm kiếm, mua các sản
phẩm,hoặc đặt hàng sản phẩm.
 Các sản phẩm được sắp xếp hợp lý. Vì vậy người dùng sẽ có cái nhìn tổng quan
về tất cả các sản phẩm hiện có.
 Người dùng có thể xem chi tiết từng sản (có hình ảnh minh hoạ sản phẩm).
 Khi đã chọn được món hàng vừa ý thì người dùng click vào nút cho vào giỏ
hàng hoặc chọn biểu tượng giỏ hàng để sản phẩm được cập nhật trong giỏ hàng.
 Người dùng vẫn có thể quay trở lại trang sản phẩm để xem và chọn tiếp, các sản
phẩm đã chọn sẽ được lưu vào trong giỏ hàng.
 Khách hàng cũng có thể bỏ đi những sản phẩm không vừa ý đã có trong giỏ hàng.
 Nếu đã quyết định mua các sản phẩm trong giỏ hàng thì người dùng click vào
mục thanh toán để hoàn tất việc mua hàng, hoặc cũng có thể huỷ mua hàng.
 Đơn giá của các món hàng sẽ có trong giỏ hàng.
 Người dùng sẽ chọn các hình thức vận chuyển, thanh toán hàng do hệ thống đã
định.

22
3.2. Xác định yêu cầu của khách hàng
3.2.1 Hệ thống hiện hành của cửa hàng
Hiện tại cửa hàng đang sử dụng cơ chế quảng cáo, hợp đồng trưng bày, đặt
hàng trực tiếp tại trung tâm do các nhân viên bán hàng trực tiếp đảm nhận (hoặc có
thể gọi điện đến nhà phân phối để đặt hàng và cung cấp địa chỉ để nhân viên giao
hàng tận nơi cho khách hàng). Trong cả hai trường hợp trên khách hàng đều nhận
hàng và thanh toán trực tiếp bằng tiền mặt tại nơi giao hàng. Và trong tờ hoá đơn
khách hàng phải điền đầy đủ thông tin cá nhân và số lượng mặt hàng cần mua. Kế
toán phải chuẩn bị hoá đơn thanh toán, nhập một số dữ liệu liên quan như ngày, giờ,
tên khách hàng, mã số mặt hàng, số lượng mua. Dựa vào những ràng buộc cụ thể của
hệ thống hiện hành chúng ta có thể đề nghị một hệ thống khác tiên tiến hơn, tiết kiệm
được thời gian…
3.2.2 Hệ thống đề nghị
Để có thể vừa quảng cáo, bán hàng và giới thiệu sản phẩm của cửa hàng trên mạng thì
website cần có các phần như:
 Về giao diện:
 Giao diện người dùng
 Phải có một giao diện thân thiện dễ sử dụng.
 Phải nêu bật được thế mạnh của website, cũng như tạo được niềm tin cho khách
hàng ngay từ lần ghé thăm đầu tiên.
 Giới thiệu được sản phẩm của cửa hàng đang có.
 Có danh mục sản phẩm.
 Chức năng đặt hàng, mua hàng.
 Có biểu mẫu liên hệ.
 Mỗi loại sản phẩm cần phải có trang xem chi tiết sản phẩm.
 Giao diện người quản trị.
 Đơn giản, dễ quản lý và không thể thiếu các mục như:
 Quản lý sản phẩm.
 Quản lý hoá đơn.

23
 Quản lý mọi thay đổi của website.
 Về nghiệp vụ:
 Người xây dựng nên hệ thống phải am hiểu về thương mại điện tử, hiểu rõ cách
thức mua bán hàng qua mạng.
 Người xây dựng nên hệ thống đặc biệt phải hiểu rõ các thông số, hình ảnh,
thông tin mô tả các loại giầy dép: Có thể đưa ra đựơc một cái nhìn tổng quát, sâu rộng
về sản phẩm.
 Về bảo mật
 Người Admin có toàn quyền giữ bảo mật cho website bằng mật khẩu riêng.
 Về hệ thống
 Phần cứng: PC bộ vi xử lý pentium III, ram 128 trở lên, ổ cứng 10G trở lên.
 Hệ điều hành: Windown XP trở lên
 Website hỗ trợ: XAMPP, SQL Server.
 Lựa chọn giải pháp
 Chương trình sử dụng ngôn ngữ ASP và cơ sở dữ liệu SQL Server.
 Các công cụ mà hệ thống sử dụng:
 Gói XAMPP: Cài đặt các thành phần Apache, ASP, SQL Server.
 Apache 2 - Server
 ASP 5.5.1- Ngôn ngữ lập trình
 SQL Server - Cơ sở dữ liệu
 FileZilla - Giả lập FTP server
 Và các tính năng chuyên sâu khác...
 SQL Server: Dùng để lưu cơ sở dữ liệu.
 Visua Studio 2010: Tạo form, thiết kế giao diện.
 Photoshop, flash: Thiết kế giao diện.

24
CHƯƠNG 4: PHÂN TÍCH THIẾT KẾ HỆ THỐNG
4.1 Phân tích các chức năng của hệ thống
4.1.1 Mô hình phân cấp chức năng
 Admin là người quản lý hệ thống webstie có các chức năng sau:
 Quản lý sản phẩm.
 Quản lý hóa đơn.
 Quản lý tin tức.
 Quản lý khách hàng.

Hình 4.1 Sơ đồ phân cấp chứ năng Admin.


 Khách hàng được sử dụng các chức năng sau:
 Tìm kiếm sản phẩm: theo tên sản phẩm, theo giá sản phẩm.
 Đăng ký: đăng ký làm thành viên của website.
 Đăng nhập: đăng nhập để có thể mua hàng.
 Đặt hàng: thêm sản phẩm vào giỏ hàng, xóa sản phẩm trong giỏ hàng, gửi đơn
đặt hàng.
 Xem thông tin sản phẩm: xem theo danh mục, xem chi tiết sản phẩm.

25
Hình 4.2 Biểu đồ phân cấp chức năng khách hàng.
4.1.2 Chức năng đăng ký thành viên
 Mô tả(Description): Dành cho khách hàng đăng ký làm thành viên để có thêm
nhiều chức năng cho việc mua bán sản phẩm, cũng như tạo mối quan hệ lâudài với
cửa hàng .
 Input: Khách vãng lai phải nhập đầy đủ các thông tin (*: là thông tin bắt buộc).
Tên đăng nhập: (*)
Mật khẩu: (*)
Họ và tên: Nhập họ và tên. (*)
Email: nhập email. (*)
Địa chỉ: Nhập địa chỉ của Member. (*)
Điện thoại: Nhập điện thoại. (*)
 Process: Kiểm tra thông tin nhập. Nếu thông tin chính xác sẽ lưu thông tin vào
CSDL và thêm thông tin của thành viên đó vào CSDL.
 Output: Đưa ra thông báo đăng ký thành công hoặc yêu cầu nhập lại nếu thông
tin không hợp lệ

26
 Chức năng đăng ký thành viên

Hình 4.3 Biểu đồ hoạt động đăng kí thành viên


4.1.3 Chức năng đăng nhập
 Description: Cho khách hàng login vào hệ thống.
 Input: Người dùng nhập vào các thông tin về username, password để login.
 Process: Kiểm tra username và password của người dùng nhập vào và so sánh
với username và password trong CSDL.
 Output: nếu đúng cho đăng nhập và hiển thị các chức năng của khách hàng,
ngược lại hiển thị thông báo yêu cầu nhập lại nếu thông tin không chính xác.

27
 Chức năng đăng nhập

Hình 4.4 Biểu đồ hoạt động đăng nhập vào hệ thống

4.1.4 Chức năng đăng xuất


 Description: Cho phép người dùng đăng xuất khỏi hệ thống khi không còn nhu
cầu sử dụng hệ thống.
 Input: Người dùng click vào nút thoát trên hệ thống.
 Process: Tiến hành xóa session lưu thông tin đăng nhập để dừng phiên làm việc
của tài khoản khách hàng trong hệ thống.
 Output: Quay trở lại trang hiện hành. Ẩn hết các chức năng của khách hàng.

28
4.1.5 Chức năng xem thông tin sản phẩm
 Description: Cho phép xem chi tiết thông tin của sản phẩm.
 Input: Chọn sản phẩm cần xem.
 Process: Lấy thông tin sản phẩm từ CSDL thông qua ID.
 Output: Hiện chi tiết thông tin sản phẩm.
 Chức năng xem thông tin sản phẩm

Hình 4.5 Biểu đồ hoạt động xem thông tin về sản phẩm

29
4.1.6 Các chức năng quản lý Sản Phẩm
 Chức năng chỉnh sửa thông tin sản phẩm:
 Description: Giúp Admin thay đổi thông tin của sản phẩm đã có trong CSDL.
 Input: Admin nhập thông tin mới của sản phẩm.
 Process: Cập nhật thông tin mới cho sản phẩm.
 Output: Hiển thị thông báo đã cập nhật sản phẩm.

Hình 4.6 Biểu đồ chức năng sửa thông tin sản phẩm

30
 Chức năng xoá sản phẩm
 Description: Giúp Admin có thể xoá sản phẩm.
 Input: Chọn sản phẩm cần xoá.
 Process: Xoá trong CSDL.
 Output: Load lại danh sách sản phẩm.

Hình 4.7 Biểu đồ chức năng xoá sản phẩm


 Chức năng thêm sản phẩm:
 Description: Giúp Admin có thể thêm sản phẩm mới.
 Input: Admin nhập vào những thông tin cần thiết của sản phẩm mới.
 Process: Kiểm tra xem những trường nào không được để trống. Nếu tất cả đều
phù hợp thì thêm vào database. Ngược lại thì không thêm vào database.

31
 Output: Load lại danh sách sản phẩm để xem sản phẩm mới đã được thêm vào
CSDL.

Hình 4.8 Biểu đồ chức năng thêm sản phẩm

4.1.7 Chức năng đặt hàng


 Description: Cho phép tất cả các khách hàng đã đăng ký thành viên có thể đặt
hàng.
 Input: Sau khi xem giỏ hàng, khách hàng có nhu cầu đặt hàng qua mạng thì có
thể click vào nút đặt hàng và điền một số thông tin cần thiết để người quản trị có thể

32
xác nhận thông tin và giao hàng trực tiếp đến đúng địa chỉ một cách nhanh nhất có
thể.
 Process: Lưu thông tin về khách hàng và thông tin hóa đơn đặt hàng vào các
bảng trong cơ sở dữ liệu.
 Output: Đưa ra thông báo đơn đặt hàng đã được lập thành công hoặc không
thành công.

Hình 4.9 Biểu đồ chức năng đặt hàng

4.1.8 Chức năng đổi mật khẩu


 Description: Cho phép thay đổi mật khẩu.
 Input: Người dùng điền thông tin mật khẩu cũ và mới.

33
 Process: Kiểm tra thông tin người dùng nhập vào. Nếu đúng thì cập nhật các
thông tin mới, ngược lại thì không.
 Output: Hiển thị thông báo thành công nếu thông tin nhập vào chính xác hoặc
hiển thị thông báo yêu cầu nhập lại nếu thông tin không chính xác.

Hình 4.10 Biểu đồ chức năng đổi mật khẩu

34
4.2 Thiết kế các chức năng hệ thống
 Đặc tả Use-case các chức năng.
 Use-case tìm kiếm

Hình 4.11 Use case tìm kiếm

Hình 4.12 Biểu đồ cộng tác chức năng tìm kiếm

 Lớp biên: Interface.


 Lớp điều khiển: Control.
 Lớp thực thể: Database.

35
 Dưới đây là biểu đồ tuần tự:

Hình 4.13 Biểu đồ tuần tự chức năng tìm kiếm


 Use-case quản lý sản phẩm:

Hình 4.14 Use-case quản lý sản phẩm

36
 Lớp biên: Login, Interface.
 Lớp điều khiển: Control.
 Lớp thực thể: Database.

Hình 4.15 Biểu đồ cộng tác chức năng cập nhật


 Chức năng thêm mới sản phẩm:

Hình 4.16 Biểu đồ tuần tự chức năng thêm sản phẩm mới

37
 Chức năng sửa thông tin sản phẩm:

Hình 4.17 Biểu đồ tuần tự chức năng sửa thông tin sản phẩm

38
 Chức năng xóa sản phẩm:

Hình 4.18 Biểu đồ tuần tự chức năng xóa sản phẩm


Tương tự đối với Use-casequản lý người dùng hệ thống và quản lý khách hàng
(với các chức năng thêm, sửa, xóa).

39
 Chức năng đăng ký thành viên

Hình 4.19 Biểu đồ tuần tự chức năng đăng ký thành viên

40
 Chức năng đăng nhập:

Hình 4.20 Biểu đồ tuần tự chức năng đăng nhập

41
4.3 Cách tổ chức dữ liệu và thiết kế chương trình cho trang Web
Việc tổ chức dữ liệu phải giải quyết được các yêu cầu đã phân tích để lúc hiển
thị lên trang Web có giao diện dễ nhìn, dễ dàng, hấp dẫn khách hàng... Một phương
pháp sử dụng khá rộng rãi từ trước đến nay là quản lí theo từng nhóm sản phẩm. Mỗi
nhóm sẽ có một mã nhóm và tên nhóm để nhận biết. Đối với Website này, với các sản
phẩm, các sản phẩm sẽ tương ứng với mã hãng và mã loại sản phẩm của nó và mã đó
sẽ làm khóa chính trong bảng đó. Sau đây là một số bảng trong cơ sở dữ liệu.
Bảng HoaDonChiTiet: Dùng để lưu thông tin về giỏ hàng của khách hàng.

Name Type Null Chú thích


ID_HD Int(10) No Mã hóa đơn
SP_ID Int(10) No Mã sản phẩm
TenSP nvarchar(255) No Tên Sản phẩm
GiaTien Decimal No Giá tiền
ThanhTien Decimal No Thành tiền
SoLuong int No Số lượng
ngaydat datetime No Ngày đặt hàng
Bảng 4.1 Bảng giohang
Bảng hoadon: Dùng để lưu thông tin về đơn hàng.
Name Type Null Chú thích
ID_HD Int() No Mã hóa đơn
TenNguoiNhan nvarchar (255) No Tên khách hàng
DiaChi nvarchar(255) No Địa chỉ
Dienthoai nvarchar (255) No Điện thoại
NgayDatHang datetime No Ngày đặt hàng
TongTien Decimal No Tổng tiền

Bảng 4.2 Bảng hoadon

42
Bảng danhmuc: Dùng để quản lí danh mục loại sản phẩm.
Name Type Null Chú thích
Loai_ID Int() No Mã loại sản phẩm
Loai_Names nvarchar (255) No Tên loại sản phẩm
Bảng 4.3 Bảng Danhmuc
Bảng sanpham: Dùng để quản lý sản phẩm.

Name Type Null Chú thích


SP_ID Int() No Mã sản phẩm
SP_Names nvarchar (255) No Tên sản phẩm
SP_Price Decimal No Giá sản phẩm
SP_ND nvarchar (255) No Mô tả nội dung
SP_Logo nvarchar (255) H/a nhỏ ngoài trang chủ
SP_Images nvarchar (255) h/a to trong phần chi tiết
SP_ImagesCT nvarchar (255) h/a to trong phần chi tiết
Loai_ID Int() Mã loại sản phẩm
Bảng 4.4 Bảng sanpham
Bảng nguoidung: Dùng để quản lý thành viên.
Name Type Null Chú thích
ID_ND int No Mã người dùng
TaiKhoan Varchar(255) No Tài khoản
Matkhau Varchar(255) No Mật khẩu
Email Varchar(255) No Email
HoTen nvarchar(255) No Tên người dùng
DiaChi nvarchar(32) No Địa chỉ
SoDienThoai Int(10) No Số điện thoại
Bảng 4.5 Bảng thanhvien

43
Bảng quantri: Dùng để quản lý quản trị điều hành website.
Name Type Null Chú thích
QT_ID int No Mã quản trị
Account_Admin Varchar(255) No Tài khoản
Pass_Admin Varchar(255) No Mật khẩu

Bảng 4.6 Bảng quantri


4.4 Sơ đồ mô hình quan hệ

Hình 4.21 Sơ đồ mô hình quan hệ.

44
4.5 Thiết kế giao diện
4.5.1 Giao diện người dùng
 Giao diện trang chủ

Hình 4.22 Hình ảnh giao diện trang chủ.


Trang chủ“Default.aspx”: Là trang chính, chứa tất cả các mục để lựa chọn. Từ
trang chủ khách hàng có thể tìm thấy mọi thông tin cần thiết:

45
- Thông tin về các loại sản phẩm với giao diện gần gũi, thân thiện và dễ sử
dụng... từ đó khách hàng có thể đặt mua cho mình những sản phẩm yêu thích, phù
hợp với túi tiền.
- Các bài viết hay về các loại sản phẩm, danh mục được quản trị hệ thống chọn
lọc... và chia làm các mục chính: giầy nam, giầy nữ, boot nữ…..
 Giao diện trang danh sách sản phẩm

Hình 4.23 hình ảnh giao diện trang list.

Trang chủ“cata.aspx”: Là list hiển thì các sản phẩm có trong danh mục cần xem

46
 Giao diện trang chi tiết

Hình 4.24 Hình ảnh giao diện trang chi tiết.


Trang “details-sp.aspx” là trang hiển thị thông tin chi tiết về sản phẩm: giá,
thông tin về sản phẩm …giúp cho khách hàng có cái nhìn tổng quan về sản phẩm. Là
cơ sở để khách hàng có quyết định mua sản phẩm hay không.

47
 Giao diện Form đăng nhập

Hình 4.25 Hình ảnh giao diện form đăng nhập.


Trang “dang-nhap.aspx” là trang mà khách hàng sẽ nhập User và Pass của
mình để đăng nhập vào website, nếu chưa có tài khoản khách hàng nhấn vào nút
Đăng ký để tạo cho mình một tài khoản mới.
 Giao diện Form đăng ký thành viên

Hình 4.26 Hình ảnh giao diện form đăng ký.


Trang “dang-ky.aspx” Tại đây khách hàng sẽ điền đầy đủ thông tin cá nhân và
đăng ký cho mình một tài khoản, để dùng cho việc mua hàng tại website.

48
 Giao diện giỏ hàng

Hình 4.27 Hình ảnh giao diện giỏ hàng.


Trang “gio-hang.aspx” là trang mà khách hàng có thể xem được những sản
phẩm của mình đã chọn. Tại đây khách hàng có thể biết được số lượng mặt hàng
mình đã chọn cũng như tổng số tiền phải thanh toán. Khách hàng có thể thêm, cập
nhập cũng như xóa sản phẩm ngay tại giỏ hàng. Tại đây cũng có chức năng lưu lịch
sử mua hàng của khách hàng.
 Giao diện xem lịch sử mua hàng

Hình 4.28 Hình ảnh giao diện lịch sử mua hàng
Trang “xem-lai-lsgd.aspx”hiển thì lại các đơn hàng mà khách hàng mua trước đó.

49
 Giao diện trang danh mục sản phẩm

Hình 4.29 Hình ảnh giao diện trang danh mục sản phẩm
 Giao diện trang quảng cáo

Hình 4.30 Hình ảnh giao diện trang quảng cáo

50
 Giao diện trang giới thiệu

Hình 4.31 Hình ảnh giao diện trang giới thiệu

4.5.2 Giao diện Admin


 Giao diện trang đăng nhập quản trị Admin

Hình 4.32 Hình ảnh giao diện trang đăng nhập quản trị Admin

51
 Giao diện trang admin

Hình 4.33 Hình ảnh giao diện trang admin


Đây là trang đăng nhập quản trị dành cho người Admin của cửa hàng, cung cấp
đầy đủ tính năng cho người quản trị như: quản lý sản phẩm, quản lý thành viên, quản
lý các đơn đặt hàng...
 Giao diện trang quản lý đơn hàng

Hình 4.34 Hình ảnh giao diện trang quản lý đơn hàng.
Đây là trang quản lý đơn hàng dành cho người Admin của cửa hàng, có thể
quản lý các đơn đặt hàng bao gồm các thông tin như tên khách hàng, địa chỉ thanh
toán, số điện thoại, tổng tiền hóa đơn, thời gian đặt hàng...

52
 Giao diện quản lý sản phẩm

Hình 4.35 Hình ảnh giao diện quản lý sản phẩm


Đây là trang quản lý sản phẩm dành cho người Admin của cửa hàng. Người quản
trị có thể quản lý sản phẩm của cửa hàng, cập nhật sản phẩm, thêm, sửa, xóa sản
phẩm...

 Giao diện quản lý tin tức

Hình 4.36 Hình ảnh giao diện trang quản lý tin tức

53
 Giao diện trang đổi mật khẩu

Hình 4.37 Hình ảnh giao diện trang thay đổi mật khẩu

54
CHƯƠNG 5: KẾT LUẬN

5.1 Nhận xét bản thân


Trong quá trình thực hiện đồ án tốt nghiệp, em đã củng cố lại được nhiều kiến
thức cơ bản về cơ sở dữ liệu, về phương pháp phân tích thiết kế hệ thống.
Đồ án được hoàn thành có thế vẫn còn những thiếu xót do thời gian không có
nhiều và trình độ chuyên môn của em còn chưa cao, nên em rất mong được sự chỉ bảo
giúp đỡ của các thầy cô và sự góp ý của các bạn để bài báo cáo của em ngày một hoàn
thiện hơn.
5.2 Kết quả đạt được 
Khảo sát được thực trạng, từ đó đưa ra được giải pháp cho bài toán, thiết kế hệ
thống và thiết kế cơ sở dữ liệu cho bài toán quản lý, làm cơ sở, nền tảng cho quá trình
cài đặt, nhằm giúp cho người quản lý có thể giải quyết các công việc một cách thuận
lợi và dễ dàng hơn là quản lý trên giấy tờ, giảm chi phí nhân công và thời gian, giúp
cho khách hàng mua hàng một cách nhanh chóng và thuận tiện hơn.
5.3 Những hạn chế
Do có nhiều hạn chế về thời gian và trình độ chuyên môn, nên em chưa giải
quyết được trọn vẹn những vấn đề nảy sinh trong thực tế.
Phần xử lý dữ liệu vẫn chưa đạt được kết quả như mong muốn.
5.4 Hướng phát triển của đề tài
Giao diện thân thiện và hoàn hảo hơn, chuyên nghiệp hơn, giải quyết được
nhiều công việc nảy sinh trong thực tế, xây dựng bảo mật và sao lưu dữ liệu một cách
tốt nhất.
Cuối cùng, em xin chân thành cảm ơn cô Th.S Bùi Thị Thùy người trực tiếp
hướng dẫn em thực hiện đồ án này, thầy đã giúp em rất nhiều trong suốt quá trình tìm
hiểu, thiết kế hệ thống và thiết kế cơ sở dữ liệu cũng như thiết kế chương trình cho bài
toán, ngoài ra em cũng xin gửi lời cảm ơn đến các thầy, cô trong khoa Công nghệ
thông tin cũng đã góp phần giúp đỡ em, để em có thể hoàn thành đúng thời gian quy
định.

55
TÀI LIỆU THAM KHẢO

Trong đồ án tốt nghiệp của mình, em có sử dụng một số tài liệu như:

 Một số trang web:


http://www.qhonline.info/

http://www.uet.vnu.edu.vn/tltk/Learning

http://www.tailieu.vn/Công Nghệ Thông Tin

http://www.clbtinhoc.dntu.edu.vn

http://www.itstudent.net/vi/

http://doc.edu.vn/tai-lieu/giao-trinh-phan-tich-thiet-ke-he-thong-thong-tin-5798/

 Một số sách tham khảo:


 Tiếng Việt
[1] Nguyễn Văn Ba (2004), Phân tích và thiết kế hệ thống thông tin, Nhà xuất
bản đại học Quốc Gia Hà Nội.
[2] Phạm Hữu Khang (2009), SQL Server 2008 – Lập trình T-SQL, Nhà xuất
bản lao động xã hội.
[3] Phạm Công Ngô (2010), Lập trình C# từ cơ bản đến nâng cao, Nhà xuất
bản giáo dục Việt Nam.
[4] Nguyễn Xuân Thịnh (2011, 2012), Kỹ thuật và thủ thuật lập trình Visual C#
2010 – 2012 tập 1 và tập 2, Nhà xuất bản Hồng Đức
[5] GV. Nguyễn Hoàng Nhung (2007), Cơ sở dữ liệu I, II, III , Trường Đại Học
Thủy Lợi

 Tiếng Anh:
[6] Rattz, Joseph, Apress.LINQ.for.Visual.C.Sharp.2008.june.2008
[7] Rattz, Joseph, C. Pro LINQ: Language Integrated Query in C# 200,
[8] Rattz, Joseph, C. Pro LINQ: Object Relational Mapping in C# 2008

56

You might also like