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

Báo cáo thực tập doanh nghiệp và thực tập tốt nghiệp đề tài website quản lý kho sử dụng công cụ lập trình web – laravel framework

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 (3.83 MB, 83 trang )

ĐẠI HỌC CÔNG NGHỆ GIAO THÔNG VẬN TẢI
KHOA CÔNG NGHỆ THÔNG TIN

BÁO CÁO THỰC TẬP DOANH NGHIỆP
VÀ THỰC TẬP TỐT NGHIỆP

ĐỀ TÀI:
Website quản lý kho sử dụng công cụ lập trình
Web – Laravel framework
Cán bộ hướng dẫn

:

NGUYỄN ANH TUẤN

Giảng viên hướng dẫn :

PHẠM THỊ THUẬN

Sinh viên thực hiện

:

NGUYỄN CHU TÙNG

Mã sinh viên

:

70DCHT23037


Lớp

:

70DCHT23

NIÊN KHÓA: 2019 – 2023


ĐẠI HỌC CÔNG NGHỆ GIAO THÔNG VẬN TẢI
KHOA CÔNG NGHỆ THÔNG TIN

BÁO CÁO THỰC TẬP DOANH NGHIỆP
VÀ THỰC TẬP TỐT NGHIỆP

ĐỀ TÀI:
Website quản lý kho sử dụng công cụ lập trình
Web – Laravel framework
Cán bộ hướng dẫn

:

NGUYỄN ANH TUẤN

Giảng viên hướng dẫn :

PHẠM THỊ THUẬN

Sinh viên thực hiện


:

NGUYỄN CHU TÙNG

Mã sinh viên

:

70DCHT23037

Lớp

:

70DCHT23

NIÊN KHÓA: 2019 – 2023


TRƯỜNG ĐH CƠNG NGHỆ GTVT
KHOA CƠNG NGHỆ THƠNG TIN

CỘNG HỊA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập – Tự do – Hạnh phúc

ĐỀ CƯƠNG THỰC TẬP DOANH NGHIỆP
Thời gian từ 04/05/2023 đến 30/07/2023
Họ và tên sinh viên: NGUYỄN CHU TÙNG
Lớp: 70DCHT23. Điện thoại: 0981074844
Email:

Cơ sở thực tập: Công ty cổ phần quảng cáo và công nghệ cao Doohub
Tên cơ quan: Công ty cổ phần quảng cáo và công nghệ cao Doohub
Địa chỉ: A10 – Lô 15 – Khu đô thị mới Định Cơng, phường Định Cơng, quận Hồng
Mai, thành phố Hà Nội, Việt Nam
Số điện thoại: 0977367986
Người hướng dẫn: NGUYỄN ANH TUẤN
Điện thoại: 0977367986. Email:
Nội dung thực tập:
-

Tìm hiểu văn hóa, phong cách làm việc của cơng ty;
Tìm hiểu ngơn ngữ lập trình PHP, Java, NodeJS;
Tìm hiểu các cơ sở dữ liệu phục vụ trong quá trình lập trình web;
Nghiên cứu và thiết kế, phân tích hệ thống web theo u cầu của cơng ty;
Lập trình và tham gia lập trình các website cho khách hàng theo yêu cầu của cơng
ty.

Loại hình:
Phát triển Ứng dụng

[✓]

Nghiên cứu

[✓]

Tìm hiểu Cơng nghệ

[✓]


Cung cấp nghiệp vụ

[✓]

Sư phạm

[ ]

Khác

[✓]

Mục đích yêu cầu:
-

Học hỏi kinh nghiệm và trau dồi kiến thức thực tế;
Cải thiện kỹ năng và nâng cao trình độ;
Làm quen với mơi trường làm việc chuyên nghiệp.

Dự kiến kết quả:
-

Có được kinh nghiệm thực tế và kiến thức sâu hơn;
Nâng cao kỹ năng và trình độ;


-

Xây dựng mối quan hệ và tiếp cận cơ hội việc làm trong tương lai;
Hoàn thiện 1 dự án hoàn chỉnh cho riêng bản thân.


Lịch trình thực hiện (Bám sát nội dung công việc):
Nội dung
Các tuần tương ứng
Chương 1: Giới thiệu
Tuần 1:
1.1 Giới thiệu về cơng ty
- Tìm hiểu về công ty
1.2 Nội dung và mục tiêu thực tập - Hoàn thành đề cương
Chương 2: Kiến thức nền tảng
2.1 Cơ sở lý thuyết
2.2. Cơng cụ sử dụng
Chương 3: Phân tích thiết kế hệ
thống
3.1. Khảo sát hệ thống
3.2. Các chức năng của hệ thống
3.3. Phân tích hệ thống

Tuần 2 +3 +4 + 5:
- Tìm hiểu về các cơng cụ cần thiết đề làm demo;
Tuần 6 +7 +8 +9:
- Phân tích các u cầu được cho;
-Xây dựng mơ hình hệ thống;
-Hồn thành demo.

Chương 4: Kết quả thực nghiệm
4.1. Giao diện hệ thống
4.2. Kết luận

Tuần 10 + 11:

- Hoàn thành các nhiệm vụ được giao và các dự
án độc lập.
- Tổng kết kinh nghiệm và kiến thức đã học được
trong quá trình thực tập.
- Xin chữ kí các giấy tờ, báo cáo giảng viên hướng
dẫn.
Chương 5: Kết luận trong quá Tuần 12 +13: Tổng kết lại các kết quả trong quá
trình thực tập
trình thực tập
4.1 Những kết quả đạt được
4.2 Kết luận

Đề nghị (nếu có): Khơng
Ngày nộp Đề cương:
Ngày nộp Báo cáo kết quả thực tập:
Ngày bảo vệ kết quả thực tập tốt nghiệp:
Ý kiến phê duyệt của người hướng dẫn về nội dung Đề cương:
Ngày

tháng

năm 20

Chữ ký của
người hướng dẫn

Ngày

tháng


năm 20

Xác nhận của
giáo viên hướng dẫn

Ngày

tháng

năm 20

Xác nhận của
đơn vị thực tập


MỤC LỤC
LỜI CẢM ƠN ................................................................................................................ 3
LỜI NÓI ĐẦU................................................................................................................ 4
DANH MỤC HÌNH ....................................................................................................... 5
DANH MỤC BẢNG ...................................................................................................... 6
BẢNG DANH MỤC TỪ VIẾT TẮT ........................................................................... 7
CHƯƠNG 1: GIỚI THIỆU .......................................................................................... 8
1.1. Giới thiệu về công ty ........................................................................................... 8
1.1.1. Giới thiệu chung về công ty ......................................................................... 8
1.1.2. Lịch sử phát triển ......................................................................................... 9
CHƯƠNG 2: KIẾN THỨC NỀN TẢNG .................................................................. 11
2.1. Tổng quan cơ sở lý thuyết ................................................................................ 11
2.1.1. Mơ hình MVC............................................................................................. 11
2.1.2. Laravel Framework ................................................................................... 14
2.1.3. Cài đặt Laravel ........................................................................................... 15

2.1.4. Xampp ......................................................................................................... 19
2.1.5. PhpMyAdmin ............................................................................................. 20
2.1.6. Sublime Text ............................................................................................... 22
2.1.7. Giới thiệu ngơn ngữ lập trình PHP .......................................................... 25
2.2. Cơng cụ sử dụng ............................................................................................... 27
CHƯƠNG 3: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG ....................................... 28
3.1. Khảo sát hệ thống ............................................................................................. 28
3.2. Các chức năng của hệ thống ............................................................................ 29
3.2.1. Phát biểu bài tốn ...................................................................................... 29
3.3. Phân tích hệ thống ............................................................................................ 30
3.3.1. Vai trò của người dùng ............................................................................. 30

1


3.3.2. Biểu đồ Use-case ......................................................................................... 32
3.3.3. Biểu đồ hoạt động ....................................................................................... 41
3.3.4. Biểu đồ tuần tự ........................................................................................... 46
3.3.5. Biểu đồ lớp .................................................................................................. 49
3.3.6. Bảng cơ sở dữ liệu ...................................................................................... 50
CHƯƠNG 4: KẾT QUẢ THỰC NGHIỆM .............................................................. 57
4.1.

Giao diện hệ thống ...................................................................................... 57

4.2.

Kết luận ....................................................................................................... 62

CHƯƠNG 5: KẾT LUẬN TRONG QUÁ TRÌNH THỰC TẬP ............................. 63

5.1 Những kết quả đạt được .................................................................................... 63
5.2 Kết luận ............................................................................................................... 63
DANH MỤC TÀI LIỆU THAM KHẢO ......................................................................i

2


LỜI CẢM ƠN
Sau quá trình nghiên cứu và thực hiện đề tài này, em muốn bày tỏ lòng biết ơn
chân thành đến tất cả những người đã giúp đỡ và hỗ trợ em trong suốt quá trình này.
Đầu tiên, em xin gửi lời cảm ơn tới tất cả các giảng viên tại trường ĐẠI HỌC CÔNG
NGHỆ GIAO THÔNG VẬN TẢI, những người đã truyền đạt kiến thức và hướng dẫn
em một cách tận tâm trong suốt thời gian học tập ở đây.
Em muốn đặc biệt gửi lời cảm ơn đến Cơ Phạm Thị Thuận, người đã giúp em
hồn thành báo cáo thực tập này một cách tận tâm và chu đáo.
Em cũng muốn bày tỏ lịng biết ơn đến Cơng ty cổ phần quảng cáo và công
nghệ cao Doohub, nơi em đã được trải nghiệm và áp dụng những kiến thức đã học vào
thực tế. Em muốn gửi lời cảm ơn đến anh Nguyễn Anh Tuấn và toàn bộ đồng nghiệp
trong công ty đã hỗ trợ tôi trong suốt thời gian thực tập.
Cuối cùng, em muốn gửi lời cảm ơn đến gia đình và bạn bè của mình, những
người đã động viên, chăm sóc và giúp đỡ em trong quá trình nghiên cứu và hồn thành
báo cáo thực tập này.
Em nhận thức rằng kiến thức của tơi cịn hạn chế và em chưa hoàn thiện trong
việc áp dụng chúng vào thực tế. Vì vậy, em mong nhận được sự góp ý và hỗ trợ từ Ban
Giám Đốc Doanh nghiệp và các giảng viên để em có thể tiếp tục hồn thiện và phát triển
hơn nữa.
Em xin chân thành cảm ơn!
Sinh viên thực hiện
Nguyễn Chu Tùng


3


LỜI NĨI ĐẦU
Trong q trình đào tạo tại các trường Đại học, việc tổ chức thực tập cho sinh viên
đóng vai trị vơ cùng quan trọng. Thực tập nghề là một phần khơng thể thiếu trong q
trình học, mang đến cơ hội thực tế giúp em trải nghiệm và áp dụng kiến thức học tập
vào thực hành. Nhận được giới thiệu từ Trường Đại học Công nghệ Giao thông vận tải
và sự đồng ý của Công ty cổ phần quảng cáo và công nghệ cao Doohub, em vô cùng tự
hào được thực tập tại môi trường này - một nơi rất phù hợp với chuyên ngành của em.
Trong suốt thời gian thực tập, em đã có cơ hội tìm hiểu về sự phát triển và cơ cấu
tổ chức của Công ty. Điều này giúp em rút ra nhiều bài học và kinh nghiệm quý báu cho
sự nghiệp sau này khi em bước ra trường. Em xin gửi lời cảm ơn chân thành đến thầy
cô trong Trường Đại học Công nghệ Giao thơng vận tải đã nhiệt tình truyền đạt kiến
thức và kinh nghiệm quý báu trong suốt quá trình học tập. Đặc biệt, em muốn bày tỏ
lòng biết ơn đến cơ Phạm Thị Thuận, người đã hướng dẫn tận tình trong đợt thực tập
vừa qua. Dưới sự hỗ trợ của cô, em đã nắm vững kiến thức hơn, sẵn sàng áp dụng vào
thực tế một cách thành thạo.
Em cũng muốn gửi lời cảm ơn tới các anh chị trong đơn vị thực tập - Công ty cổ
phần quảng cáo và cơng nghệ cao Doohub, vì đã tạo điều kiện cho em có mơi trường
thực tập làm việc hịa đồng và thân thiện. Sự giúp đỡ của các bạn trong nhóm đã giúp
em và đồng đội hoàn thành tốt đợt thực tập.
Tuy em còn nhiều bỡ ngỡ khi lần đầu tiên tiếp xúc với hoạt động thực tế tại Công ty,
cũng như kiến thức chun mơn của em cịn hạn chế, nên bài báo cáo khơng thể tránh
khỏi những thiếu sót. Vì vậy, em mong nhận được sự đóng góp từ đại diện Công ty và
Ban lãnh đạo Trường Đại học Công nghệ Giao thông vận tải, để bài báo cáo của em
được hoàn thiện và phát triển tốt hơn. Sự hỗ trợ và đóng góp của các bạn sẽ giúp em có
được trải nghiệm thực tế và kiến thức sâu hơn, góp phần tạo nên sự thành cơng trong
tương lai.
Em xin chân thành cảm ơn.


4


DANH MỤC HÌNH
HÌNH 3. 1: SƠ ĐỒ CƠ CẤU TỔ CHỨC ................................................................................28
HÌNH 3. 2: BIỂU ĐỒ USECASE TỔNG QUÁT......................................................................32
HÌNH 3. 3: BIỂU ĐỒ USECASE ĐĂNG NHẬP ....................................................................33
HÌNH 3. 4: BIỂU ĐỒ USECASE QL DỮ LIỆU SẢN PHẨM ...................................................34
HÌNH 3. 5: BIỂU ĐỒ USECASE QL NHÀ CUNG CẤP..........................................................35
HÌNH 3. 6: BIỂU ĐỒ USECASE QL DỮ LIỆU NHẬP HÀNG .................................................36
HÌNH 3. 7: BIỂU ĐỒ USECASE QL DỮ LIỆU XUẤT HÀNG .................................................37
HÌNH 3. 8: BIỂU ĐỒ USECASE QL DỮ LIỆU KHO .............................................................38
HÌNH 3. 9: BIỂU ĐỒ USECASE THỐNG KÊ .......................................................................39
HÌNH 3. 10: BIỂU ĐỒ USECASE QUẢN TRỊ THƠNG TIN....................................................40
HÌNH 3. 11: BIỂU ĐỒ HOẠT ĐỘNG ĐĂNG NHẬP ...............................................................41
HÌNH 3. 12: BI ỂU ĐỒ HOẠT ĐỘNG QL DỮ LIỆU SẢN PHẨM ............................................42
HÌNH 3. 13: BIỂU ĐỒ HOẠT ĐỘNG QL DỮ LIỆU NHẬP HÀNG ...........................................43
HÌNH 3. 14: BIỂU ĐỒ HOẠT ĐỘNG QL DỮ LIỆU XUẤT HÀNG ..........................................44
HÌNH 3. 15: BIỂU ĐỒ HOẠT ĐỘNG THỐNG KÊ ................................................................45
HÌNH 3. 16: BIỂU ĐỒ HOẠT ĐỘNG QUẢN TRỊ THƠNG TIN ...............................................45
HÌNH 3. 17: BIỂU ĐỒ TUẦN TỰ ĐĂNG NHẬP....................................................................46
HÌNH 3. 18: BIỂU ĐỒ TUẦN TỰ QL DỮ LIỆU NHẬP HÀNG................................................46
HÌNH 3. 19: BIỂU ĐỒ TUẦN TỰ QL DỮ LIỆU XUẤT HÀNG ...............................................47
HÌNH 3. 20: BIỂU ĐỒ TUẦN TỰ HĨA ĐƠN NHẬP ..............................................................47
HÌNH 3. 21: BIỂU ĐỒ TUẦN TỰ HĨA ĐƠN XUẤT ..............................................................48
HÌNH 3. 22: BIỂU ĐỒ TUẦN TỰ THỐNG KÊ ......................................................................48
HÌNH 3. 24: BIỂU ĐỒ LỚP QUẢN LÝ KHO HÀNG ..............................................................49
HÌNH 3. 25: CƠ SỞ DỮ LIỆU QUẢN LÝ QUẢN LÝ KHO ......................................................50


5


DANH MỤC BẢNG
BẢNG 3. 1: CÁC TÁC NHÂN ............................................................................................31
BẢNG 3. 2: CÁC QUYỀN SỬ DỤNG ..................................................................................32
BẢNG 3. 3: BẢNG ĐẶC TẢ USECASE ĐĂNG NHẬP ..........................................................33
BẢNG 3. 4: BẢNG USECASE USECASE QL DỮ LIỆU SẢN PHẨM ......................................34
BẢNG 3. 5: BẢNG ĐẶC TẢ USECASE QL NHÀ CUNG CẤP................................................35
BẢNG 3. 6: BẢNG ĐẶC TẢ USECASE QL DỮ LIỆU NHẬP HÀNG .......................................36
BẢNG 3. 7: BẢNG ĐẶC TẢ USECASE QL DỮ LIỆU XUẤT HÀNG .......................................37
BẢNG 3. 8: BẢNG ĐẶC TẢ USECASE QL DỮ LIỆU KHO ...................................................38
BẢNG 3. 9: BẢNG ĐẶC TẢ USECASE THỐNG KÊ .............................................................39
BẢNG 3. 10: BẢNG ĐẶC TẢ USECASE QUẢN TRỊ THÔNG TIN..........................................40
BẢNG 3. 11: BẢNG LOẠI HÀNG.......................................................................................50
BẢNG 3. 12: BẢNG ĐƠN VỊ HÀNG ...................................................................................51
BẢNG 3. 13: BẢNG SẢN PHẨM ........................................................................................51
BẢNG 3. 14: BẢNG SẢN PHẨM NHẬP KHO ......................................................................52
BẢNG 3. 15: BẢNG HÓA ĐƠN NHẬP ................................................................................52
BẢNG 3. 16: BẢNG SẢN PHẨM XUẤT KHO ......................................................................53
BẢNG 3. 17: BẢNG HÓA ĐƠN XUẤT ................................................................................53
BẢNG 3. 18: BẢNG NHÀ CUNG CẤP ................................................................................54
BẢNG 3. 19: BẢNG QUYỀN .............................................................................................54
BẢNG 3. 20: BẢNG NGƯỜI DÙNG ....................................................................................54
BẢNG 3. 21: BẢNG VAI TRÒ ...........................................................................................55

6


BẢNG DANH MỤC TỪ VIẾT TẮT

STT
1
2
3
4
5
6
7
8
9
10

Ký hiệu viết tắt
QL
SP
ND
DV
UC
TK
NCC
HD
SDT
DMSP

Chữ viết đầy đủ
Quản lý
Sản phẩm
Người dùng
Đơn vị
Usecase

Thống kê
Nhà cung cấp
Hóa đơn
Số điện thoại
Danh mục sản phẩm

7


CHƯƠNG 1: GIỚI THIỆU
1.1. Giới thiệu về công ty
1.1.1. Giới thiệu chung về công ty
Công Ty Cổ Phần Quảng Cáo Và Công Nghệ Cao Doohub được ông/bà Đỗ
Việt Mạnh làm đại diện pháp luật. Ngồi nghành chính ra thì Doohub mang đến những
dịch vụ và giải pháp phục vụ trong nhiều lĩnh vực khác nhau như: Lập trình máy vi tính,
Xuất bản phần mềm, Đại lý, mơi giới, đấu giá hàng hóa, Nghiên cứu thị trường và thăm
dị dư luận, Bán lẻ máy vi tính, thiết bị ngoại vi, phần mềm và thiết bị viễn thông trong
các cửa hàng chuyên doanh, ...
Trong mảng quảng cáo, chúng tôi đã xây dựng và triển khai các chiến dịch quảng
cáo sáng tạo và hiệu quả cho các khách hàng đa dạng. Nhờ sự chuyên nghiệp và sáng
tạo của đội ngũ chuyên gia quảng cáo của chúng tôi, chúng tôi đã giúp khách hàng nâng
cao nhận diện thương hiệu, tăng cường tương tác và thu hút lượng khách hàng tiềm năng
lớn.
Về phát triển phần mềm và website, chúng tôi đã tạo ra những giải pháp đột phá,
tùy chỉnh và tiên tiến. Đội ngũ lập trình viên và nhà phát triển của chúng tơi đã có khả
năng đáp ứng các yêu cầu đa dạng từ các khách hàng. Chúng tôi đã phát triển và triển
khai thành công các ứng dụng phần mềm và website chất lượng cao, giúp khách hàng
tối ưu hóa quy trình kinh doanh, tăng cường tương tác với khách hàng và cải thiện trải
nghiệm người dùng. Thành tựu này đã mang lại lợi ích rõ rệt cho các doanh nghiệp và
góp phần vào sự phát triển và thành công của họ.

Với các thành tựu này, chúng tôi không ngừng nỗ lực để tiếp tục cung cấp những
giải pháp công nghệ tiên tiến và chất lượng cao, đồng hành cùng khách hàng trong hành
trình phát triển và thành cơng.
SỨ MỆNH:
“Chúng tơi cam kết đem đến các giải pháp sáng tạo, chất lượng và đáng tin cậy trong
mọi lĩnh vực hoạt động của chúng tôi, nhằm đáp ứng tối đa nhu cầu và mong muốn của
khách hàng."

8


1.1.2. Lịch sử phát triển
- Công ty Cổ phần Quảng cáo và Công nghệ Cao Doohub được thành lập vào ngày
05/06/2020, do ông/bà Đỗ Việt Mạnh làm đại diện pháp luật. Cơng ty có mã số thuế
0109207789 và được cấp giấy chứng nhận đăng ký kinh doanh. Ngành nghề kinh doanh
chính của cơng ty là "Quảng cáo." và được quản lý bởi Chi cục Thuế Quận Đống Đa.
- Trụ sở chính của Doohub chính thức mở vào đầu năm 2021 đặt tại Tầng 19, Số
1 Đào Duy Anh, Phường Kim Liên, Quận Đống Đa, Hà Nội. Công ty hoạt động dưới
tên giao dịch DOOHUB.

1.1. Địa chỉ của công ty DOOHUB
- Ngày 28/05/2020, công ty nhận được Tài khoản ngân hàng để thực hiện các giao
dịch tài chính.
- Trong q trình phát triển, Công ty Cổ phần Quảng cáo và Công nghệ Cao
Doohub đã không ngừng nỗ lực để đáp ứng nhu cầu của khách hàng và phát triển bền
vững trên thị trường công nghệ và quảng cáo. Với đội ngũ nhân viên chuyên nghiệp và
sự tận tâm với công việc, Doohub đã và đang không ngừng đạt được những thành tựu
đáng kể trong lĩnh vực quảng cáo và công nghệ cao.
1.2. Tầm nhìn, sứ mệnh
- Về kinh doanh:

Với khách hàng là các doanh nghiệp vừa và nhỏ, Doohub không ngừng phát triển
và mở rộng nhóm giải pháp "Made by Doohub" nhằm tạo ra một nền tảng quản trị duy

9


nhất, tích hợp tồn bộ các cơng cụ và dịch vụ trong một hệ thống. Điều này giúp tối ưu
hóa quá trình vận hành và khả năng kết nối mở rộng với các giải pháp và dịch vụ từ bên
thứ ba.
Ngoài ra, Doohub cũng hướng đến khách hàng cá nhân và mong muốn mang đến
những trải nghiệm dịch vụ tốt nhất, dựa trên các giải pháp và nền tảng quản trị mới.
Chúng tôi cam kết cung cấp các dịch vụ phù hợp với nhu cầu và mong muốn của khách
hàng cá nhân, để đảm bảo sự tiện lợi và hiệu quả trong việc sử dụng các giải pháp công
nghệ của chúng tôi.
Với sứ mệnh phát triển phần mềm và cung cấp các giải pháp công nghệ tiên tiến,
Doohub đang đứng vững và ngày càng khẳng định vị thế của mình trong ngành công
nghệ thông tin. Chúng tôi tự hào với những thành tựu đã đạt được và cam kết tiếp tục
nỗ lực để mang đến giá trị tối đa cho khách hàng và cộng đồng.
- Về công nghệ:
Doohub sẽ tập trung phát triển công nghệ theo hai hướng là phát triển các nền tảng,
công nghệ lõi và gia tăng trải nghiệm khách hàng, hiệu quả vận hành dựa trên công nghệ.
- Về sứ mệnh:
“Chúng tôi cam kết đem đến các giải pháp sáng tạo, chất lượng và đáng tin cậy
trong mọi lĩnh vực hoạt động của chúng tôi, nhằm đáp ứng tối đa nhu cầu và mong muốn
của khách hàng."

10


CHƯƠNG 2: KIẾN THỨC NỀN TẢNG

2.1. Tổng quan cơ sở lý thuyết
2.1.1. Mơ hình MVC
2.1.1.1. Khái niệm mơ hình MVC
MVC là chữ viết tắt của Model - View - Controller, đây là một mơ hình kiến phần
mềm được tạo ra với mục đích quản lý và xây dựng dự án phần mềm có hệ thống hơn.
Mơ hình này được dùng khá rộng rãi và đặc biệt là trong các ngôn ngữ lập trình web.
Trong PHP hiện tại có khá nhiều Framework và tất cả đều xây dựng từ mơ hình MVC.

Hình 2. 1: Mơ hình MVC
Trong mơ hình này thì:
- Model: có nhiệm vụ thao tác với cơ sở dữ liệu, nghĩa là nó sẽ chứa tất cả các
hàm, các phương thức truy vấn trực tiếp với dữ liệu và controller sẽ thơng qua các hàm,
phương thức đó để lấy dữ liệu rồi gửi qua View.
- View: có nhiệm vụ tiếp nhận dữ liệu từ controller và hiển thị nội dung sang các
đoạn mã HTML, bạn có thể hiểu nơm na đây người ta còn gọi là thành phần giao diện.
- Controller: đóng vài trị trung gian giữa Model và View. Nó có nhiệm vụ tiếp
nhận yêu cầu từ client sau đó xử lý request, load model tương ứng và gửi data
qua view tương ứng rồi trả kết quả về cho client.

11


2.1.1.2. Mơ hình MVC trong Laravel
Trong Laravel, mơ hình này có sơ đồ như sau:

Hình 2. 2: Mơ hình MVC trong Laravel
Ở đây, mọi Request từ phía người dùng đều phải qua Route, dữ liệu được gửi
xuống Controller để xử lý, cần dữ liệu sẽ lấy từ Model lên hoặc cập nhật dữ liệu
xuống Model, kết quả gửi ra View cho người sử dụng.
2.1.1.3. Vai trị của mơ hình MVC

- Là một mơ hình đơn giản và bạn có thể áp dụng với nhiều dự án khác nhau.
Khả năng ứng dụng mơ hình MVC rộng, khơng cần phụ thuộc vào ngơ ngữ, nền tảng nào.
- Là mơ hình chuẩn cho nhiều dự án, bạn chỉ cần tham gia một dự án mơ hình
MVC thì bạn có thể tham gia bất cứ dự án nào khác.
- Ưu điểm quan trọng của mơ hình MVC là giúp các nhà đầu tư, nhà quản lý hiểu
được quy trình hoạt động của một dự án và giúp các lập trình viên dễ dàng quản lý các
dự án.
- Mơ hình MVC có 3 lớp rõ ràng nên giúp bạn quản lý các ứng dụng dễ dàng.

12


Bạn có thể thiết kế hạn tầng quản lý định tuyến hiệu quả và xử lý quản lý các yêu cầu
của khách hàng nhanh chóng, chính xác.
- Hỗ trợ hiệu quả cho các mơ hình TDD (mơ hình phát triển ứng dụng hướng kiểm
thử).
Mơ hình MVC sẽ hoạt động theo 4 bước cơ bản như sau:
Bước 1: Khi người sử dụng trình duyệt web để tìm kiếm thơng tin thì các yêu cầu
sẽ được chuyển tới lớp Controller tương ứng thông qua sự điều hướng của bộ Routing.
Bước 2: Khi Controller nhận được lệnh thì ngay lập tức kiểm tra và xử lý dữ liệu
và trả kếtquả về các View tương ứng.
Bước 3: Khi nhận được dữ liệu từ Controller thì View sẽ sắp xếp các thơng tin cho
người sử dụng thơng qua các dữ liệu, thơng tin hình ảnh tùy thuộc vào yêu cầu của khách
hàng và gửi về Gui Content, sau đó Controller sẽ hiển thị kết quả lên Browser.
Bước 4: Browser nhận được gí trị sẽ lập tức hiển thị thông tin cho người sử dụng
2.1.1.4. Ưu và nhược điểm của mơ hình MVC
Ưu điểm:
- Các dự án có thể áp dụng ngay mơ hình MVC mà không phụ thuộc môi trường,
nền tảng xây dựng hay ngôn ngữ lập trình được sử dụng.
- Có khả năng vận chuyển, phân chia các class/ function vào các thành phần riêng

biệt Controller – Model – View, giúp cho việc xây dựng – phát triển – quản lý – vận
hành và bảo trì một dự án dễ dàng hơn cũng như kiểm soát được các luồng xử lý và
tạo ra các thành phần xử lý nghiệp vụ chuyên biệt hóa.
- Tạo thành mơ hình chuẩn cho nhiều dự án trong tương lai của doanh nghiệp. Nếu
bạn nắm rõ mơ hình MVC của một dự án nào đó, thì khi tiếp cận với một dự án khác mà
bạn chưa từng biết hoặc tiếp xúc, nhưng nó lại được xây dựng với mơ hình MVC thì sẽ
khơng khó khăn gì.
- Giúp các chun gia lập trình, nhà quản lý, nhà đầu tư, PM… có thể hiểu được
dự án hoạt động ra sao hoặc giúp các lập trình viên dễ dàng quản lý – phát triển dự án.
Nó khơng phải ngơn ngữ, nhưng khi họ cùng nhìn vào nó thì sẽ tự hiểu nó là gì, khi đó
họ có thể trao đổi các u cầu và bàn bạc công việc.

13


- Đây là một mơ hình chuẩn, nó tối ưu nhất hiện nay so với nhiều mơ hình khác
và được sử dụng trong nhiều dự án và nhiều lĩnh vực, đặc biệt trong công nghệ sản xuất
ứng dụng – phần mềm. Các lập trình viên sử dụng mơ hình chuẩn MVC để có thể dễ
dàng phân phối và chuyển giao cơng nghệ.
- Đây là mơ hình đơn giản, xử lý những nghiệp vụ đơn giản, và dễ dàng triển khai
với các dự án nhỏ.
Nhược điểm:
- Hệ thống sẽ chạy chậm hơn PHP thuần
- Xây dựng cầu kì và mất thời gian để xây dựng thư viện, cấu trúc
2.1.2. Laravel Framework
2.1.2.1. Laravel là gì?
Laravel là một PHP framework mã nguồn mở và miễn phí, được phát triển bởi
Taylor Otwell và nhắm vào mục tiêu hỗ trợ phát triển các ứng dụng web theo kiếm trúc
model-view-controller (MVC). Những tính năng nổi bật của Laravel bao gồm cú pháp
dễ hiểu – rõ ràng , một hệ thống đóng gói modular và quản lý gói phụ thuộc, nhiều cách

khác nhau để truy cập vào các cơ sở dữ liệu quan hệ, nhiều tiện ích khác nhau hỗ trợ
việc triển khai vào bảo trì ứng dụng.
Vào khoảng Tháng 3 năm 2015, các lập trình viên đã có một cuộc bình chọn PHP
framework phổ biến nhất, Laravel đã giành vị trí quán quân cho PHP framework phổ
biến nhất năm 2015, theo sau lần lượt là Symfony2, Nette, CodeIgniter, Yii2 vào một
số khác. Trước đó, Tháng 8 2014, Laravel đã trở thành project PHP phổ biến nhất và
được theo dõi nhiều nhất trên Github.
Laravel được phát hành theo giấy phép MIT, với source code được lưu trữ
tại Github.
2.1.2.2. Xây dựng theo mơ hình MVC
Laravel được xây dựng và phát triển theo mơ hình MVC (Model-ViewController) nhờ đó mà cấu trúc và cách tổ chức code trong project được sắp xếp một
cách hợp lý dễ dàng cho việc maintain cũng như phát triển về lâu dài.
Các tính năng dựng sẵn:
Bản thân Laravel đã cung cấp cho người dùng rất nhiều các nhóm tính năng giúp
q trình phát triển trở nên nhanh chóng hơn rất nhiều lần.

14


Chỉ với một câu lệnh đơn giản:
Bạn sẽ dựng được cho mình tồn bộ các tính năng như đăng nhập, đăng xuất, đăng
kí, qn mật khẩu mà khơng tốn cơng code một dịng nào cả. Tất nhiên bạn cũng có thể
tự mình chỉnh sửa lại logic sao cho hợp với nhu cầu sử dụng cá nhân.
Các tính năng bảo mật:
Để giúp lập trình viên có thể tối đa thời gian tập chung vào việc phát triển các tính
năng, Laravel đã cung cấp sẵn cho người dùng các tính năng bảo mật cơ bản như:
ORM của Laravel sử dụng PDO thay vì mysqli để chống lại tấn cơng SQL Injection.
Laravel sử dụng một field token ẩn để chống lại tấn công kiểu CSRF.
Các biến được đưa ra view mặc định đều được Laravelescape để tránh tấn công
XSS

2.1.3. Cài đặt Laravel
2.1.3.1. Chuẩn bị
Xampp.Download phiên bản mới nhất tại:
/>Composer. Download tại:
/>2.1.3.2. Yêu cầu
Laravel phiên bản 5.3 yêu cầu sau:
PHP version >= 5.6.4
OpenSSL PHP Extension
PDO PHP Extension
Mbstring PHP Extension
Tokenizer PHP Extension
Cài phiên bản mới nhất của xampp là đã có đủ

15


2.1.3.3. Cài đặt
- Cài xampp: cài vào ổ C máy

Hình 2. 3: Giao diện cài xampp: cài vào ổ C máy
- Nếu cài ở ổ C:\xampp thì file php.exe nó sẽ nằm ở trong C:\xampp\php\php.exe

Hình 2. 4: Cài composer
- Tiếp theo, sẽ hướng dẫn tạo một project laravel 5.3.
Khi các bạn dùng xampp thì mặc định project để ở
đường dẫn C:\xampp\htdocs

16




×