Tải bản đầy đủ (.doc) (83 trang)

Báo cáo đồ án quản lý chốt đơn cho cộng tác viên xây dựng bằng php laravel 2022

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.43 MB, 83 trang )

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ GIAO THÔNG VẬN TẢI
KHOA CNTT

BÁO CÁO
ĐỒ ÁN TỐT NGHIỆP
Đề tài:

PHÂN TÍCH THIẾT KẾ VÀ XÂY DỰNG WEBSITE CHỐT
HÀNG CHO CỘNG TÁC VIÊN BÁN HÀNG
Giảng viên hướng dẫn: Lê Thị Hường
Sinh viên thực hiện: Tạ Anh Dũng
Mã sinh viên:
69DCHT10006
Lớp:
Ngày thực hiện

69DCHT11
:
Hội đồng phản biện:

Thầy /cô .......................................................................................
Thầy/cô ........................................................................................
Thầy /cô .......................................................................................
Chữ ký sinhviên: ........................................................................
Vĩnh Phúc,


TRƯỜNG ĐẠI HỌC CÔNG NGHỆ GIAO THÔNG VẬN TẢI
KHOA CNTT

BÁO CÁO


ĐỒ ÁN TỐT NGHIỆP
Đề tài:

PHÂN TÍCH THIẾT KẾ VÀ XÂY DỰNG WEBSITE CHỐT
HÀNG CHO CỘNG TÁC VIÊN BÁN HÀNG
Giảng viên hướng dẫn: Lê Thị Hường
Sinh viên thực hiện: Tạ Anh Dũng
Mã sinh viên:
69DCHT10006
Lớp:
Ngày thực hiện

69DCHT11
:

Hội đồng phản biện:
Thầy /cô .......................................................................................
Thầy/cô ........................................................................................
Thầy /cô .......................................................................................
Chữ ký sinhviên: ........................................................................

Hà Nội,
2


DANH MỤC CÁC TỪ VIẾT TẮT................................................................................7
LỜI CÁM ƠN................................................................................................................ 8
LỜI NÓI ĐẦU............................................................................................................... 9
CHƯƠNG 1: PHẦN MỞ ĐẦU...................................................................................10
1. Lý do chọn đề tài...............................................................................................10

2. Mục tiêu đề tài...................................................................................................10
3. Giới hạn và phạm vi của đề tài.............................................................................10
4. Kết quả đạt được................................................................................................11
5. Kết cấu của đề tài...............................................................................................11
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT............................................................................12
1.1.

Cơ sở lý thuyết về cơ sở dữ liệu.....................................................................12

1.2.

Ngơn ngữ lập trình.........................................................................................14

1.2.1.

Ngơn ngữ HTML......................................................................................14

1.2.2. Ngơn ngữ CSS.............................................................................................15
1.2.3. Ngơn ngữ PHP............................................................................................16
1.3. Mơ hình MVC...................................................................................................18
1.4. Laravel framework............................................................................................19
1.5. Kết chương 2.....................................................................................................20
CHƯƠNG 3: PHÂN TÍCH THIẾT KẾ HỆ THỐNG...................................................21
3.1. Mơ tả bài tốn....................................................................................................21
3.2. Đối tượng sử dụng hệ thống..............................................................................22
3.3. Khảo sát............................................................................................................22
3.3.1. Lên kế hoạch khảo sát ()..............................................................................23
3.3.2. Xác định yêu cầu của hệ thống:...................................................................25
3.3.3. Yêu cầu chức năng và phi chức năng..........................................................28
3.3.4. Phân tích thiết kế hệ thống..........................................................................29

3.4 Phân tích và thiết kế hệ thống.............................................................................31
3.5. Biểu đồ use case................................................................................................33
3.5.1 Biểu đồ Use-case tổng quát..........................................................................33
3.5.2 Use case đăng nhập......................................................................................34
3


3.5.3 Use case đăng ký..........................................................................................35
3.5.4. Use case quản lý thông tin cá nhân..............................................................36
3.5.5

Use case quản lý danh sách thành viên....................................................37

3.5.6 Use case quản lý danh mục, dịch vụ, thông tin, bài viết...............................38
3.5.7 Use case đăng ký dịch vụ.............................................................................39
3.5.8 Use case xử lý đơn đăng dịch vụ..................................................................40
3.6 Biểu đồ hoạt động..............................................................................................41
3.6.1 Biểu đồ hoạt động chức năng đăng ký..........................................................41
3.6.2 Biểu đồ hoạt động chức năng đăng nhập......................................................42
3.6.3 Biểu đồ hoạt động chức năng chỉnh sửa thông tin cá nhân...........................42
3.6.4 Biểu đồ hoạt động chức năng quản lý danh sách thành viên........................43
3.6.5 Biểu đồ hoạt động chức năng quản lý danh mục, dịch vụ, bài viết...............43
3.6.6 Biểu đồ hoạt động chức năng xử lý đơn hàng..............................................44
3.6.7 Biểu đồ hoạt động chức năng thêm mới bài viết...........................................44
3.6.8 Biểu đồ hoạt động chức năng sửa bài viết....................................................45
3.6.9 Biểu đồ hoạt động chức năng xóa bài viết....................................................45
3.6.10 Biểu đồ hoạt động chức năng thêm mới sản phẩm dịch vụ.........................46
3.6.11 Biểu đồ hoạt động chức năng sửa sản phẩm..............................................46
3.6.12 Biểu đồ hoạt động chức năng xóa sản phẩm..............................................47
3.6.13 Biểu đồ hoạt động chức năng xóa người dùng...........................................48

3.6.14 Biểu đồ hoạt động chức năng đặt lịch........................................................49
3.6.15 Biểu đồ hoạt động chức năng sửa dịch vụ..................................................49
3.6.16 Biểu đồ hoạt động chức năng thêm mới dịch vụ........................................50
3.6.17 Biểu đồ hoạt động chức năng xóa dịch vụ..................................................51
3.7 Biểu đồ tuần tự...................................................................................................51
3.7.1 Biểu đồ tuần tự đăng nhập/đăng ký..............................................................51
3.7.2 Biểu đồ tuần tự quản lý sản phẩm.............................................................52
3.7.3 Biểu đồ tuần tự quản lý bài viết.................................................................52
3.7.4 Biểu đồ tuần tự quản lý slide.....................................................................53
3.7.5 Biểu đồ tuần tự quản lý sự kiện.................................................................54
3.7.6 Biểu đồ tuần tự quản lý đơn hàng..............................................................54
4


3.8. Biểu đồ lớp.......................................................................................................55
3.8.1 Danh sách các đối tượng..............................................................................55
3.8.2.

Mơ hình hóa các lớp đối tượng................................................................56

3.9 Thiết kế cơ sở dữ liệu.........................................................................................57
3.9.1 Bảng contacts...............................................................................................57
3.9.2 Bảng exprts..................................................................................................58
3.9.3 Bảng failed_jobs...........................................................................................58
3.9.4 Bảng group_permission................................................................................59
3.8.5

Bảng migrations.....................................................................................59

3.9.6 Bảng password_resets..................................................................................59

3.9.7 Bảng permissions.........................................................................................60
3.9.8

Bảng permission_role............................................................................60

3.9.9 Bảng posts....................................................................................................60
3.9.10 Bảng roles..................................................................................................61
3.9.11 Bảng role_user............................................................................................61
3.9.12 Bảng services.............................................................................................61
3.9.13 Bảng stories............................................................................................62
3.9.14 Bảng transactions...................................................................................62
3.9.15 Bảng users..............................................................................................63
3.10 Kiểm thử...........................................................................................................63
3.10.1. Chức năng đăng ký....................................................................................63
3.10.2. Chức năng đăng nhập................................................................................63
3.10.3. Chức năng cập nhật thông tin....................................................................63
3.10.4. Chức năng quên mật khẩu.........................................................................64
3.11 Bảo trì...............................................................................................................64
3.12 Kết chương 3....................................................................................................64
CHƯƠNG 4: XÂY DỰNG HỆ THỐNG.....................................................................65
4.1. Giao diện quản trị..............................................................................................65
4.2 Giao diện danh mục dịch vụ...............................................................................65
4.3 Giao diện quản lý lịch hẹn..................................................................................66
4.4 Giao diện quản lý bài viết...................................................................................66
5


4.5 Giao diện quản lý tài khoản người dùng.............................................................67
4.6 Giao diện quản lý liên hệ....................................................................................67
4.7 Giao diện quản lý các chuyên gia.......................................................................68

4.8 Giao diện trang chủ website...............................................................................68
4.9 Giao diện dịch vụ................................................................................................69
4.10 Giao diện chi tiết bài viết..................................................................................69
4.11 Giao diện đăng ký.............................................................................................70
4.12 Giao diện đăng nhập.........................................................................................70
4.13 Giao diện gửi thông tin liên hệ.........................................................................71
4.14 Giao diện trang danh sách bài viết....................................................................71
4.12. Kết chương 4...................................................................................................71
KẾT LUẬN.................................................................................................................72
1. Đánh giá kết quả của đề tài...................................................................................72
2. Hướng phát triển tiếp theo của đề tài....................................................................73
TÀI LIỆU THAM KHẢO...........................................................................................74
PHỤ LỤC.................................................................................................................... 75

6


DANH MỤC CÁC TỪ VIẾT TẮT
ST

Từ viết

T

tắt

Tên đầy đủ

Giải thích


Application
1

API

2

DOM

3

XHTML

Programming
Interface
Document Object
Model
Extensible
HyperText Markup

Giao diện lập trình ứng dụng.

Các đối tượng thao tác văn bản

Ngôn ngữ Đánh dấu Siêu văn bản Mở rộng

Language
4

XML


eXtensible Markup
Language

Ngôn ngữ đánh dấu mở rộng do W3C đề nghị
với mục đích tạo ra các ngơn ngữ đánh dấu
khác
Ngơn ngữ đánh dấu (markup language) XML

5

SVG

Scalable Vector

và dùng để miêu tả các hình ảnh đồ họa véc tơ

Graphics

hai chiều, tĩnh và hoạt hình, thường dành cho
ứng dụng trên các trang mạng.
Ngơn ngữ mơ hình gồm các ký hiệu đồ họa

6

UML

Unified Modeling

mà các phương pháp hướng đối tượng sử


Language

dụng để thiết kế các hệ thống thơng tin một
cách nhanh chóng.

7

7

CSDL

Cơ sở dữ liệu


LỜI CÁM ƠN
Đồ án tốt nghiệp là kết quả của một khóa học và là một thành quả lao động đáng ghi
nhận. Để có thể thực hiện và hồn thành đồ án này, em đã nhận được sự giúp đỡ và
hướng dẫn tận tình của các thầy, các cơ và các bạn trong khoa. Em xin gửi lời cảm ơn
chân thành và sâu sắc tới các thầy cô trong khoa, cảm ơn các thầy, các cơ những người
đã tận tình giảng dạy và truyền đạt những kiến thức cần thiết, những kinh nghiệm quý
báu cho em trong suốt ba năm học tại trường đại học TRƯỜNG ĐẠI HỌC CÔNG
NGHỆ GIAO THƠNG VẬN TẢI để em có thể tự tin khi thực hiện đồ án này.
Đặc biệt em xin chân thành cảm ơn cơ giáo người đã tận tình hướng dẫn, chỉ bảo, động
viên và hỗ trợ em trong suốt quá trình thực hiện đề tài này. Trong thời gian làm đồ án
cùng cô, em không những học hỏi được những kiến thức mà còn học hỏi được khả
năng làm việc nghiêm túc, độc lập và có trách nhiệm với cơng việc của mình.
Cuối cùng, em xin bày tỏ lịng biết ơn vơ hạn đối với cha mẹ và gia đình những người
thân xung quanh đã ln động viên, khích lệ và tạo điều kiện tốt nhất cho em trong
quá trình học tập.

Mặc dù em đã có cố gắng hồn thiện đồ án trong phạm vi và khả năng cho phép nhưng
chắc chắn khơng tránh khỏi những thiếu sót. Em kính mong nhận được sự cảm thơng
và góp ý của q thầy cô và các bạn.
Vĩnh Phúc, tháng năm 2022
Sinh viên thực hiện

8


LỜI NÓI ĐẦU
Ngày nay, với sự phát triển mạnh mẽ của khoa học công nghệ, Công nghệ Thông
tin là một trong những ngành có vị thế dẫn đầu và có vai trị rất lớn trong sự phát triển
chung đó. Các ứng dụng của công nghệ thông tin được áp dụng trong mọi lĩnh vực
nghiên cứu khoa học cũng như trong mọi lĩnh vực của đời sống. Là một phần của
Công nghệ Thơng tin, Cơng nghệ web đang có được sự phát triển mạnh mẽ và phổ
biến rất nhanh bởi những lợi ích mà nó mang lại cho cộng đồng là rất lớn.
Cùng với sự phát triển vượt bậc của khoa học kỹ thuật thì cơng nghệ thơng tin và
thương mại điện tử là một trong những lĩnh vực nổi trội, có nhiều đóng góp thiết thực
nhất cho nền kinh tế. Cơng nghệ thơng tin và thương mại điện tử có mặt trong hầu hết
các lĩnh vực của cuộc sống và trở thành một công cụ hỗ trợ rất đắc lực trong công tác
quản lý, kinh doanh.
Ngày nay, “ Thương mại điện tử “ đem lại rất nhiều lợi ích khơng những cho các
doanh nghiệp mà người tiêu dùng cũng có những lợi ích như tích kiệm thời gian và chi
phí trông việc mua sắm và tiêu dùng. Việc bán hàng qua mạng khơng cịn là hình thức
xa lạ đối với người tiêu dùng nữa, bán hàng qua mạng là hình thức làm việc rất phổ
biến, hình thức này bất kỳ một doanh nghiệp kinh doanh sản phẩm đều lựa chọn.
Chính vì vậy em đã chọn đề tài “Phân tích và thiết kế Website để quảng bá và đặt
lịch cho An Thu Spa” với chức năng giới thiệu và quảng bá đặt lịch cho An Thu Spa
Nội dung đề tài gồm các chương:
Chương 1 : Cơ sở lý thuyết.

Chương 2 : Khảo sát nghiệp vụ
Chương 3 : Phân tích thiết kế hệ thống.
Chương 4 : Xây dựng hệ thống.

9


CHƯƠNG 1: PHẦN MỞ ĐẦU
1. Lý do chọn đề tài
Như chúng ta cũng thấy trong thị trường hiện nay thì việc cạnh tranh về kinh
doanh ngày càng trở nên quyết liệt và hầu hết những nhà kinh doanh, những công
ty lớn đều chú tâm đến việc làm thỏa mãm khách hàng một cách tốt nhất.
So với kinh doanh truyền thống thì thương mại điện tử chi phí thấp hơn, đạt
hiệu quả cao hơn. Hơn thế nữa, với lợi thế của công nghệ Internet nên việc truyền
tải thông tin về sản phẩm nhanh chóng, thuận tiện. Kết hợp với bộ phận giao hàng
tận nơi, là thông qua bưu điện hay ngân hàng để thanh toán tiền, càng tăng thêm
thuận lợi để loại
Biết được những nhu cầu đó chương trình “ Xây dựng website chốt hàng cho
cộng tác viên bán hàng ” được xây dựng trên nền tảng PHP nhằm để đáp ứng cho
cộng tác viên có thể thơng qua Website này mà chốt đơn hàng cho khách một cách
nhanh chóng và thuận tiện đáp ứng được nhu cầu khách hàng .
Trước thực tế đó em đã chọn đề tài:” Phân tích thiết kế và xây dựng website
chốt hàng cho cộng tác viên bán hàng” cho đề tài khóa luận tốt nghiệp của mình.
2. Mục tiêu đề tài
− Trình bày được các vấn đề liên quan đến PHP ,MySQL .
− Phân tích hệ thống chương trình bao gồm giao diện, các activity nhằm đáp ứng
nhu cầu người dùng
− Triển khai và cài đặt chương trình trong mơi trường internet

3. Giới hạn và phạm vi của đề tài

Trong phạm vi đề tài này em sẽ nghiên cứu các vấn đề sau:
-

Nghiên cứu về quy trình quản lý cộng tác viên chốt đơn

-

Website được xây dựng bằng ngôn ngữ PHP, cơ sở dữ liệu xây dựng bằng php
MyAdmin
4. Kết quả đạt được
Website quản lý chốt đơn sau khi hoàn thành dự kiến đạt được các kết quả sau:

-

Giao diện thân thiện, dễ nhìn thích hợp với người dùng
Cập nhật thông tin dữ liệu cho hệ thống.

-

Hoàn thành trang quản lý admin website với các chức năng chính sau:
+ Quản lý người dùng

10


+ Quản lý bảng điều khiển
+ Quản lý danh sách giao dịch
+ Quản lý sản phẩm: danh mục, nhà cung cấp, thuộc tính, giá trị, sản phẩm
+ Quản lý vai trò
5. Kết cấu của đề tài

Nội dung đề tài gồm các chương:
Chương 1: Cơ sở lý thuyết
Chương 2: Khảo sát nghiệp vụ
Chương 3: Phân tích thiết kế hệ thống
Chương 4: Xây dựng hệ thống

11


CHƯƠNG 2: CƠ SỞ LÝ THUYẾT
1.1.

Cơ sở lý thuyết về cơ sở dữ liệu

Hệ thống sử dụng hệ cơ sở dữ liệu MySQL.
MySQL là một hệ thống quản lý cơ sở dữ liệu quan hệ nhanh và dễ dàng.
MySQL đang được sử dụng cho nhiều công việc kinh doanh từ lớn tới nhỏ, nó được
phát triển, được cơng bố, được hỗ trợ bởi MySQL AB, là một công ty của Thụy Điển.
Hệ cơ sở dữ liệu này đã trở thành khá phổ biến vì nhiều lý do:


MySQL là mã nguồn mở.



MySQL là một chương trình rất mạnh mẽ.



MySQL sử dụng một Form chuẩn của ngôn ngữ dữ liệu nổi tiếng là SQL.




MySQL làm việc trên nhiều Hệ điều hành và với nhiều ngôn ngữ như PHP,
PERL, C, C++, Java, …



MySQL làm việc nhanh và khỏe ngay cả với các tập dữ liệu lớn.



MySQL rất thân thiện với PHP, một ngôn ngữ rất đáng giá để tìm hiểu để phát
triển Web.



MySQL hỗ trợ các cơ sở dữ liệu lớn, lên tới 50 triệu hàng hoặc nhiều hơn nữa
trong một bảng. Kích cỡ file mặc định được giới hạn cho một bảng là 4 GB,
nhưng chúng ta có thể tăng kích cỡ này (nếu hệ điều hành có thể xử lý nó) để đạt
tới giới hạn lý thuyết là 8 TB.



MySQL là có thể điều chỉnh. Giấy phép GPL mã nguồn mở cho phép lập trình
viên sửa đổi phần mềm MySQL để phù hợp với môi trường cụ thể của họ.
MySQL sử dụng nhiều kiểu dữ liệu, được chia thành 3 loại: kiểu số, kiểu date và

time, và kiểu chuỗi.
Kiểu dữ liệu số trong MySQL

MySQL sử dụng tất cả các kiểu dữ liệu số theo chuẩn ANSI SQL. Các kiểu dữ
liệu số phổ biến gồm:
12




INT: Một số ngun với kích cỡ thơng thường, có thể là signed hoặc unsigned.
Nếu có dấu, thì dãy giá trị có thể là từ -2147483648 tới 2147483647, nếu khơng
dấu thì dãy giá trị là từ 0 tới 4294967295. Chúng ta có thể xác định một độ rộng
lên tới 11 chữ số.



TINYINT: Một số nguyên với kích cỡ rất nhỏ, có thể là signed hoặc unsigned.
Nếu có dấu, thì dãy giá trị có thể là từ -128 tới 127, nếu khơng dấu thì dãy giá trị
là từ 0 tới 255. Chúng ta có thể xác định một độ rộng lên tới 4 chữ số.



SMALLINT: Một số nguyên với kích cỡ nhỏ, có thể là signed hoặc unsigned.
Nếu có dấu, thì dãy giá trị có thể là từ -32768 tới 32767, nếu khơng dấu thì dãy
giá trị là từ 0 tới 65535. Chúng ta có thể xác định một độ rộng lên tới 5 chữ số.



MEDIUMINT: Một số nguyên với kích cỡ trung bình, có thể là signed hoặc
unsigned. Nếu có dấu, thì dãy giá trị có thể là từ -8388608 tới 8388607, nếu
khơng dấu thì dãy giá trị là từ 0 tới 16777215. Chúng ta có thể xác định một độ
rộng lên tới 9 chữ số.




BIGINT: Một số nguyên với kích cỡ lớn, có thể là signed hoặc unsigned. Nếu


dấu,thì

dãy

giá

trị



thể



từ

-9223372036854775808

tới

9223372036854775807, nếu khơng dấu thì dãy giá trị là từ 0 tới
18446744073709551615. Chúng ta có thể xác định một độ rộng lên tới 20 chữ
số.



FLOAT(M,D): Một số thực dấu chấm động khơng dấu. Chúng ta có thể định
nghĩa độ dài hiển thị (M) và số vị trí sau dấy phảy (D). Điều này là khơng bắt
buộc và sẽ có mặc định là 10,2: với 2 là số vị trí sau dấu phảy và 10 là số chữ số
(bao gồm các phần thập phân). Phần thập phân có thể lên tới 24 vị trí sau dấu
phảy đối với một số FLOAT.



DOUBLE(M,D): Một số thực dấu chấm động khơng dấu. Chúng ta có thể định
nghĩa độ dài hiển thị (M) và số vị trí sau dấy phảy (D). Điều này là khơng bắt
buộc và sẽ có mặc định là 16,4: với 4 là số vị trí sau dấu phảy và 16 là số chữ số
(bao gồm các phần thập phân). Phần thập phân có thể lên tới 53 vị trí sau dấu
phảy đối với một số DOUBLE. REAL là đồng nghĩa với DOUBLE.

13




DECIMAL(M,D): Một kiểu khác của dấu chấm động không dấu. Mỗi chữ số
thập phân chiếm 1 byte. Việc định nghĩa độ dài hiển thị (M) và số vị trí sau dấy
phảy (D) là bắt buộc. NUMERIC là một từ đồng nghĩa cho DECIMAL.
1.2.

Ngơn ngữ lập trình
1.2.1. Ngơn ngữ HTML

Ngơn ngữ HTML (HyperText Markup Language – ngôn ngữ siêu văn bản) là
một trong các loại ngôn ngữ được sử dụng trong lập trình web. Khi truy cập một trang

web cụ thể là click vào các đường link, chúng ta sẽ được dẫn tới nhiều trang các nhau,
và các trang này được gọi là một tài liệu HTML (tập tin HTML).
Một trang HTML như vậy được cấu thành bởi nhiều phần tử HTML nhỏ và được
quy định bằng các thẻ tag. Chúng ta có thể phân biệt một trang web được viết
bằng ngôn ngữ HTML hay PHP thông qua đường link của nó. Ở cuối các trang HTML
thường hay có đi là .HTML hoặc .HTM
HTML là ngơn ngữ lập trình web được đánh giá là đơn giản. Mọi trang web, mọi
trình duyệt web đều có thể hiển thị tốt ngơn ngữ HTML. Hiện nay, phiên bản mới nhất
của HTML là HTML 5 với nhiều tính năng tốt và chất lượng hơn so với các phiên bản
cũ của HTML.
Vai trò của HTML trong lập trình web:
HTML là một loại ngơn ngữ đánh dấu siêu văn bản nên các chức năng của nó
cũng xoay quanh yếu tố này. Cụ thể, HTML giúp cấu thành các cấu trúc cơ bản trên
một website (chia khung sườn, bố cục các thành phần trang web) và góp phần hỗ trợ
khai báo các tập tin kĩ thuật số như video, nhạc, hình ảnh.
Ưu điểm nổi trội nhất và cũng là thế mạnh của HTML là khả năng xây dựng cấu
trúc và khiến trang web đi vào quy củ một hệ thống hoàn chỉnh. HTML chứa những
yếu tố cần thiết mà dù website có thuộc thể loại nào, giao tiếp với ngơn ngữ lập trình
nào để xử lý dữ liệu thì nó vẫn phải cần đến ngơn ngữ HTML để hiển thị nội dung cho
người truy cập.
14


Đối với các lập trình viên hay nhà phát triển web, họ đều phải học HTML như
một loại ngôn ngữ cơ bản trước khi bắt tay vào thiết kế trang web nào.
Các thẻ trong HTML:
Các trang HTML được quy định bằng các thẻ tag. Những thẻ này được chứa
trong các dấu ngoặc đơn dạng: <tên thẻ>. Trừ một vài thẻ đặc biệt, hầu hết các thẻ cơ
bản đều có các thẻ đóng tương ứng với nó. Ví dụ, thẻ <html> có thẻ đóng tương ứng
là </html>, thẻ <body> có thẻ đóng tương ứng là </body> … Bảng 1.1 là các mẫu thẻ

tag thường gặp trong HTML.
Bảng 1.1. Các mẫu thẻ thường gặp trong HTML

Tag

DOCTYPE…>

<html>

Giải thích

Cịn gọi là thẻ khai báo một tài liệu HTML. Thẻ này xác định loại
tài liệu và phiên bản HTML.

Thẻ này chứa đựng các tài liệu HTML đầy đủ. Ở đầu trang sẽ xuất
hiện các thẻ <head>, </head> và thân tài liệu là các thẻ <body>,
</body> .

<head>

Thẻ này đại diện cho đầu trang tài liệu mà có thể giữ các thẻ
HTML như <title>, <link> …

15

<title>

Thẻ <title> được sử dụng trong thẻ <head> chỉ tiêu đề tài liệu.


<body>

Thẻ này đại diện cho thân tài liệu và giữ các thẻ như

, <div>,






Thẻ tag này đại diện cho các tiêu đề trang.



Thẻ tag này đại diện cho định dạng các đoạn văn trong trang web.

1.2.2. Ngôn ngữ CSS
Định nghĩa
CSS là viết tắt của Cascading Style Sheets. Đây là một ngôn style sheet được sử
dụng để mô tả giao diện và định dạng của một tài liệu viết bằng ngôn ngữ đánh dấu
(markup). CSS cung cấp một tính năng bổ sung cho HTML. CSS thường được sử
dụng với HTML để thay đổi phong cách của trang web và giao diện người dùng. Ngơn
ngữ này cũng có thể được sử dụng với bất kỳ loại tài liệu XML nào bao gồm cả XML
đơn giản, SVG và XUL.
CSS được sử dụng cùng với HTML và JavaScript trong hầu hết các trang web để
tạo giao diện người dùng cho các ứng dụng web và giao diện người dùng cho nhiều
ứng dụng di động.
Ba lợi ích chính của CSS


Giải quyết một vấn đề lớn:


Trước khi có CSS, các thẻ như phông chữ, màu sắc, kiểu nền, các sắp xếp phần

tử, đường viền và kích thước phải được lặp lại trên mọi trang web. Đây là một q
trình rất dài tốn thời gian và cơng sức.


Tiết kiệm rất nhiều thời gian:
Định nghĩa kiểu CSS được lưu trong các tệp CSS bên ngồi vì vậy có thể thay

đổi toàn bộ trang web bằng cách thay đổi chỉ một tệp.

16

Cung cấp thêm các thuộc tính:


CSS cung cấp các thuộc tính chi tiết hơn HTML để định nghĩa giao diện của
trang web.
1.2.3. Ngôn ngữ PHP
Giới thiệu chung:



PHP khởi đầu như là một dự án mã nguồn mở nhỏ, nhưng theo đà phát triển,
ngày càng nhiều người thấy rằng nó càng ngày càng hữu ích. PHP được phát triển từ
một sản phẩm có tên là PHP/FI. PHP/FI do Rasmus Lerdorf tạo ra năm 1994, ban đầu
được xem như là một tập con đơn giản của các mã kịch bản Perl để theo dõi tình hình
truy cập đến bản sơ yếu lý lịch của ông trên mạng. Ông đã đặt tên cho bộ mã kịch bản
này là "Personal Home Page Tools". Khi cần đến các chức năng rộng hơn, Rasmus đã
viết ra một bộ thực thi bằng C lớn hơn để có thể truy vấn tới Database và giúp cho

người sử dụng phát triển các ứng dụng web đơn giản. Rasmus đã quyết định công bố
mã nguồn của PHP/FI cho mọi người xem, sử dụng cũng như sửa các lỗi có trong nó,
đồng thời cải tiến mã nguồn.
PHP viết hồi qui của "PHP: Hypertext Preprocessor".
PHP là ngôn ngữ lập trình kịch bản viết cho máy chủ mà được nhúng trong
HTML. Nó được sử dụng để quản lý nội dụng động, Database, Session tracking, …
PHP được tích hợp với một số Database thông dụng như MySQL, PostgreSQL,
Oracle, Sybase, Informix, và Microsoft SQL Server.
PHP thực thi rất tuyệt vời, đặc biệt khi được biên dịch như là một Apache
Module trên Unix side. MySQL Server, khi được khởi động, thực thi các truy vấn phức
tạp với các tập hợp kết quả khổng lồ trong thời gian Record-setting.
PHP hỗ trợ một số lượng rộng rãi các giao thức lớn như POP3, IMAP, và LDAP.
PHP4 bổ sung sự hỗ trợ cho Java và các cấu trúc đối tượng phân phối (COM và
CORBA).
Cú pháp PHP là giống C.



17

Sự sử dụng chung của PHP


PHP thực hiện các hàm hệ thống, ví dụ: từ các file trên một hệ thống, nó có thể
tạo, mở, đọc, ghi và đóng chúng.
PHP có thể xử lý các form, ví dụ: thu thập dữ liệu từ file, lưu dữ liệu vào một
file, thơng qua email có thể gửi dữ liệu, trả về dữ liệu tới người dùng.
Chúng ta có thể thêm, xóa, sửa đổi các phần tử bên trong Database thông qua PHP.
Truy cập các biến Cookie và thiết lập Cookie.
Sử dụng PHP, có thể hạn chế người dùng truy cập vào một số trang trong Website.

Nó có thể mật mã hóa dữ liệu.



Đặc trưng của PHP

Các đặc trưng quan trọng làm PHP trở thành ngôn ngữ khá tiện lợi:


Đơn giản hóa



Hiệu quả



Bảo mật cao



Linh động



Thân thiện

1.3. Mơ hình MVC
MVC là viết tắt của Model – View – Controller. Là một kiến trúc phần mềm hay
mơ hình thiết kế được sử dụng trong kỹ thuật phần mềm. Đây là mơ hình phân bố

source code thành 3 phần, mỗi thành phần có một nhiệm vụ riêng biệt và độc lập với
các thành phần khác.
Các thành phần trong MVC
Controller

18


Giữ nhiệm vụ nhận điều hướng các yêu cầu từ người dùng và gọi đúng những
phương thức xử lý chúng… Chẳng hạn thành phần này sẽ nhận request từ url và form
để thao tác trực tiếp với Model.
Model
Đây là thành phần chứa tất cả các nghiệp vụ logic, phương thức xử lý, truy xuất
database, đối tượng mô tả dữ liệu như các Class, hàm xử lý…
View
Đảm nhận việc hiển thị thông tin, tương tác với người dùng, nơi chứa tất cả các
đối tượng GUI như textbox, images… là tập hợp các form hoặc các file HTML.
Ưu điểm và nhược điểm của MVC
Ưu điểm
Thể hiện tính chun nghiệp trong lập trình, phân tích thiết kế. Do được chia
thành các thành phần độc lập nên giúp phát triển ứng dụng nhanh, đơn giản, dễ nâng
cấp, bảo trì…
Nhược điểm
Đối với dự án nhỏ việc áp dụng mơ hình MC gây cồng kềnh, tốn thời gian trong
quá trình phát triển. Tốn thời gian trung chuyển dữ liệu của các thành phần.
1.4. Laravel framework
Framework là một thư viện các hàm xây dựng sẵn, chuyên dùng phục vụ cho
cơng việc lập trình PHP. Việc sử dụng các framework hỗ trợ cơng việc lập trình nhanh
hơn, tiết kiệm thời gian và đảm bảo bảo mật hơn cho hệ thống. Một PHP Framework
thường được xây dựng trên mô hình MVC.


19


Cho tới năm 2015, thì Framework laravel hiện đang đứng top 1 thế giới về mức
độ phổ biến và ưu dùng. Được cộng đồng hỗ trợ phát triển mạnh mẽ. Tháng 8 năm
2014, Laravel Framework được xem như là một dự án PHP phổ biến nhất trên Github.
Sau nhiều lần được cộng đồng Laravel thế giới hỗ trợ phát triển thì phiên bản
mới nhất hiện nay là Laravel 5.2 và sắp tới là phiên bản 5.3.
Các tính năng cơ bản của Laravel Framework


Bundles: Ở laravel phiên bản 3.x, cung cấp một hệ thống đóng gói các module,
với rất nhiều tính năng đi kèm.



Composer: Ở laravel phiên bản 4.x, được sử dụng như một cơng cụ quản lý với
tính năng như thêm các gói cài đặt, các chức năng PHP phụ trợ cho Laravel có
trong kho Packagist.



Eloquent ORM (object relation mapping): ánh xạ các đối tượng và quan hệ cơ
sở dữ liệu, cung cấp các phương thức nội bộ để thực thi đồng thời cũng bổ sung
các tính năng hạn chế về mối quan hệ giữa các đối tượng cơ sở dữ liệu. Eloquent
ORM trình bày các bảng trong cơ sở dữ liệu dưới dạng các lớp, cung cấp thêm
lựa chọn truy cập cơ sở dữ liệu trực tiếp mới mẻ hơn, chuyên nghiệp hơn.




Application logic: Là một phần của phát triển ứng dụng, được sử dụng bởi bộ
điều khiển controllers.



Routes: Định nghĩa mối quan hệ giữa các đường dẫn (url), các liên kết (link) .
Khi một liên kết được tạo ra bằng cách sử dụng tên của routes, thì một định danh
liên kết thống nhất sẽ được tạo ra bởi laravel.



Restful Controller: cung cấp các tùy chọn để tách các logic phía sau các
request HTTP POST, GET.

20




Class auto loading: cung cấp việc tải tự động các class trong PHP, mà không
cần include các class vào. Tùy thuộc vào yêu cầu các class cần thiết sẽ được nạp
vào, hạn chế các class không cần thiết.



View: chứa các mã html, hiển thị dữ liệu được chỉ định bởi controller




Migrations: cung cấp một hệ thống kiểm soát các phiên bản lược đồ cơ sở dữ
liệu (database cheme), làm cho web ứng dụng có khả năng tương tác phù
hợp những thay đổi logic, các đoạn mã code của ứng dụng và những thay đổi cần
thiết trong việc bố trí cơ sở dữ liệu, triển khai nới lỏng và cập nhật các ứng dụng.



Unit Testing: đóng một vai trị quan trọng trong Laravel, Unit testting chứa rất
nhiều các hệ thống unit testing, giúp phát hiện và ngăn chặn lỗi trong khuôn khổ
nhất định. Unit Testing có thể đượcchạy thơng qua tiện ích command-line.



Automatic pagination: Tính năng tự động phân trang được tích hợp
vào Laravel giúp đơn giản hóa các nhiệm vụ thực hiện phân trang so với các
phương pháp thông thường.

1.5. Kết chương 2
Từ những phân tích trên về cơ sở lý thuyết các công nghệ trên, em sử dụng Laravel
framework để xây dựng các chức năng cho website quản lý chốt đơn và hệ cơ sở dữ
liệu MySQL để lưu trữ và quản lý dữ liệu hệ thống. Mặc dù các cơng nghệ này cịn tồn
tại những nhược điểm nhất định, nhưng em sẽ tận dụng các ưu điểm của các công nghệ
này để xây dựng website quản lý chốt đơn với các chức năng hoạt động tốt nhất có thể

21


CHƯƠNG 3: PHÂN TÍCH THIẾT KẾ HỆ THỐNG
Chương 3 của báo cáo sẽ trình bày phân tích thiết kế hệ thống cho website xây
chốt đơn. Trước tiên là đặc tả yêu cầu của hệ thống, sau đó sẽ đi phân tích thiết kế chi

tiết hệ thống thơng qua các biểu đồ usecase, biểu đồ tuần tự, biểu đồ hoạt động, biểu
đồ lớp và cuối cùng thiết kế cơ sở dữ liệu cho website.
3.1. Mơ tả bài tốn
Website quản lý chốt đơn tới những khách hàng tiềm năng có muốn làm cộng tác
viên, cung cấp và giới thiệu các dịch vụ hiện có của cửa hàng một cách đầy đủ thơng
qua mơi trường trực tuyến đến cho khách hàng. Vì vậy em đưa ra đặc tả bài toán như
sau:
Khách hàng muốn được tư vấn thì vào trang Web để được tư vấn cách chốt đơn, tham
khảo các sản phẩm, giá cả của sản phẩm, sản phẩm đã được đưa lên trên trang Web.
Khi khách hàng cần đến loại sản phẩm nào đó thì kích vào xem chi tiết về sản phẩm
đó, khi xem chi tiết xong, nếu khách hàng hài lòng về dịch vụ, khách hàng chọn vào
mục đăng ký cũng như số lượng người sử dụng dịch vụ. Thông thường thì phải đăng
nhập vào hệ thống mới đăng ký được dịch vụ, nhưng với những khách vãng lai, không
cần đăng ký để mua để trở thành thành viên để có thể đặt lịch cũng như đăng ký dịch
vụ sản phẩm, khách hàng phải điền đầy đủ thông tin chi tiết về mình và chọn vào đăng
kí làm cộng tác viên. Nếu thơng tin hợp lệ thì hệ thống sẽ gửi và thông báo đặt lịch
thành công cho khách hàng.
Các câu hỏi cần phải đặt ra khi xây dựng bài toán khi xây dựng trang web:
• Trang web có chức năng làm gì?
• Trang web sẽ có những chức năng nào?
• Trang web sẽ giải quyết được bài tốn gì?
• Trang web sẽ hoạt động ra sao?
• Hướng tới đối tượng nào?
• Sử dụng ngơn ngữ hay nền tảng nào để phát triển?
• Sử dụng cơ sở dữ liệu và lưu trữ dữ liệu ra sao?
• Làm sao để xây dựng nhanh chóng mà hiệu quả, hiệu năng tốt.
22


• Cơ chế nâng cấp, kiểm thử và bảo trì.

-Website cung cấp danh mục sản phẩm, nhà cung cấp, thuộc tính, giá trị sản phẩm
cho tất cả mọi người có nhu cầu làm cộng tác viên, đáp ứng đầy đủ các dịch vụ, hỗ
trợ chăm sóc khách hàng trực tuyến.
+ Xây dựng các chức năng cho khách hàng.
+ Xây dựng các chức năng cho nhân viên quản trị.
3.2. Đối tượng sử dụng hệ thống
+ Khách hàng
+ Thành viên
+ Người quản lý
+ Nhân viên
3.3. Khảo sát
Website được xem như công cụ tiếp thị mạnh mẽ nhất cho các doanh nghiệp. Đó
có thể là kênh bán hàng mang lại doanh số cao nhất, kênh thông tin giới thiệu về dịch
vụ doanh nghiệp, hay đăng ký tin tức tuyển dụng… Với các sản phẩm đa dạng thì
website là kênh quảng cáo dịch vụ mang lại nguồn doanh thu tốt nhất.
Việc xác định rõ ràng mục đích giúp người thiết kế nhanh chóng đưa ra giao diện phù
hợp với yêu cầu của doanh nghiệp. Các mục đích đó có thể là:


Giới thiệu tổ chức: lịch sử hình thành, đội ngũ, thương hiệu…



Quảng cáo các dịch vụ: chăm sóc da, tư vấn làm đẹ…



Thu hút khách hàng truy cập website tìm hiểu dịch vụ, đăng ký sử dụng




Cung cấp chỉ dẫn, thông tin liên hệ cho các khách hàng tiềm năng

Các yếu tố cần xem xét bao gồm:


Những thông tin mà đối tượng thường quan tâm: những nhà bán hàng tham
khảo giá cả, bạn trẻ chưa có vốn muốn đăng kí làm cộng tác viên



Thói quen của đối tượng khi sử dụng trang web: tìm kiếm phương pháp chốt
đơn, thơng tin sản phẩm,..



Màu sắc, hình ảnh nào dễ thu hút đối tượng nhất?

Xây dựng hệ thống điều hướng trang :
23


Điều hướng trong thiết kế website spa cũng được xem là khâu quan trọng để hướng
đến khách hàng mục tiêu. Bản chất của các thanh điều hướng, menu ngang dọc chính
là internal link giúp người dùng thao tác qua lại giữa các nội dung trên trang.
Có một quy tắc cực kỳ đơn giản, được áp dụng ở nhiều website trong việc điều hướng
trang là: QUY TẮC 3 CLICK. Nghĩa là khi người dùng muốn tìm kiếm bất kỳ thơng
tin gì trên website, họ chỉ cần thao tác 3 lần click chuột là có thể tìm thấy thơng tin đó.
Để xây dựng được hệ thống điều hướng website hiệu quả khi thiết kế website cho spa ,
cần tuân theo các nguyên tắc:



Menu rõ ràng



Sự thống nhất: màu sắc, kích thước, font chữ, …



Tập trung vào các yếu tố chính



Sử dụng các biểu tượng thông dụng

Thiết lập các yêu cầu thiết kế website :
Người ta thường sử dụng khái niệm thiết kế chuẩn UI/UX để đánh giá một thiết kế
website có đáp ứng yêu cầu tối ưu trải nghiệm người dùng hay khơng. Trải nghiệm
người dùng càng tốt, mức độ hài lịng với dịch vụ càng tăng cao. Sự hài lòng của
khách hàng là điều quan trọng với các đơn vị cung cấp dịch vụ như spa, salon bởi càng
nhiều đánh giá tốt từ khách hàng, giá trị thương hiệu của doanh nghiệp đó càng thăng
hạng, doanh số cũng vì vậy mà tăng theo.
Một thiết kế website cho spa chuẩn UI/UX giúp mang lại trải nghiệm tốt cho người
dùng, đặc biệt là những đối tượng khách hàng mục tiêu mà website hướng tới. Giao
diện mới lạ, bắt mắt, kích thích người dùng thực hiện nhiều thao tác tìm hiểu về doanh
nghiệp, hay đăng ký sử dụng dịch vụ chính là nhiệm vụ mà UI/UX có thể thực hiện
được.
Khơng chỉ riêng web designer mới cần quan tâm đến thiết kế website chuẩn UI/UX,
bản thân người lập kế hoạch thiết kế website cho spa, salon cũng cần nắm các nguyên

tắc cốt lõi của thiết kế để có thể làm việc với designer tốt nhất.
3.3.1. Xác định yêu cầu của hệ thống:
 Domain (tên miền ):
Được ví như là một địa chỉ nhà của một trang web chạy trên Internet. Đây là một liên
kết ngắn có thể thu hút người dùng đến trang web của bạn. Tên miền trang web là địa
chỉ thực của trang web của bạn, để bộ định tuyến vệ tinh hướng người dùng đến trang
24


web. Nó được sử dụng làm địa chỉ nhà hoặc mã bưu điện và khi đó trình duyệt web
cần một tên miền để dẫn bạn đến trang web.
Cấu trúc của tên miền
Tên miền bao gồm các phần tử được sắp xếp cùng nhau và phân tách bằng dấu chấm
“.”. Ví dụ: carly.com.vn là tên miền của máy chủ web của công ty chúng tôi, bao gồm:
Phần tử đầu tiên “carly” là tên của máy chủ
Thành phần “com” thứ hai thường được gọi là cấp miền thứ hai (cấp miền thứ hai).
Phần tử cuối cùng “vn” là miền cấp cao nhất (miền chủ đề).
Hoạt động của tên miền
Khi bạn nhập một tên miền bất kỳ vào trình duyệt web nào đó, thì đầu tiên bạn cần
phải truy cập đến mạng lưới chủ toàn cầu để tạo hệ thống DNS. Ngay sau khi các máy
chủ tìm kiếm được máy chủ đã được liên kết với tên miền và chuyển các yêu cầu đến
máy chủ có tên đso.
Máy chủ tên miền chính là máy chủ có chứa các cơ sở dữ liệu, nhằm phục vụ cho công
việc chuyển đổi địa chỉ IP, tên miền và tất cả được quản lý bởi công ty cung cấp tên
miền. Khi đó, cơng ty này sẽ chuyển các yêu cầu của bạn đến máy chủ (nơi lưu trữ
trang web hay còn gọi là server).
Còn đối với web server là phần cứng thì là nơi lưu trữ mọi thành phần cũng như cấu
tạo thành trang website HTML, CSS và file ảnh. Khi đó, server sẽ có nhiệm vụ phân
phát các thông tin của website tới thiết bị người dùng.
Nếu là phần mềm thì web server sẽ điều khiển người dùng truy cập tới file lưu trữ trên

máy chủ HTTP. Và bất cứ khi nào trình duyệt cần dữ liệu lưu trữ trên web server thì
trình duyệt sẽ gửi các u cầu tới phần cứng thơng qua HTTP. Cịn ngược lại khi phần
mềm gửi tài liệu yêu cầu trở lại thì thơng qua HTTP.
Cách đăng ký tên miền cho website:
Bước 1: Kiểm tra tên miền mà bạn muốn đăng ký
25


×