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

Nghiên cứu Web Framework MVC và xây dựng website của khoa công nghệ thông tin của trường đại học Thủy Lợi

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 (1.29 MB, 63 trang )

Đồ án tốt nghiệp kĩ sư Ngành công nghệ thông tin
LỜI MỞ ĐẦU
Thời đại ngày nay là thời đại phát triển vượt bậc của nền công nghệ thông tin,
đặc biệt là mạng lưới Internet. Sự có mặt của chúng đã tạo ra những bước ngoặt
mang tính cách mạng quan trọng, làm thay đổi căn bản mọi lĩnh vực trong đời sống
xã hội con người.Với cuộc sống và công việc luôn bận rộn thì Internet càng trở nên
quan trọng hơn. Không cần phải mất nhiều thời gian và công sức để tìm kiếm một
thông tin nào đó, với Internet mọi thứ dường như đã được trang bị đầy đủ, theo như
số liệu điều tra, cứ mỗi giây lại có thêm vài chục trang Web mới bổ xung vào hàng
tỷ trang đã có.
Đối với khoa công nghệ thông tin của trường đại học Thủy Lợi thì việc xây
dựng website riêng là rất cần thiết. Thông qua website này, thông tin về khoa cũng
như các công văn, thông báo, hoạt động, tin tức… của khoa sẽ đến với những người
quan tâm, đến với các bạn sinh viên của khoa một cách nhanh chóng kịp thời, tránh
những phiền hà mà phương thức giao tiếp truyền thống thường gặp phải. Từ yêu
cầu đó khoa công nghệ thông tin trường đại học Thủy Lợi đã tạo ra website của
khoa và đưa vào sử dụng đã được một thời gian dài. Nhưng với tốc độ phát triển
đến chóng mặt của nền công nghệ thông tin ngoài những yêu cầu về chuyển tải
thông tin một cách nhanh chóng và chính xác thì yêu cầu về tính thẩm mĩ của con
người cũng được nâng lên rất nhiều. Để bắt kịp với xu hướng phát triển việc thay
đổi giao diện và cập nhập thông tin trên website của khoa là rất cần thiết.
Xuất phát từ nhu cầu trên, đồng thời được sự hướng dẫn tận tình của PGS.TS
Nguyễn Đăng Tộ và thầy Phạm Trí Công ,em xin chọn đề tài cho đồ án tốt nghiệp
của mình là: “Nghiên cứu Web Framework MVC và xây dựng website của khoa”.
Hà Nội, ngày 02 tháng 12 năm 2011
Sinh viên thực hiện
Trần Ngọc Khải
Sinh viên: Trần Ngọc Khải Lớp: 49 TH1
1
Đồ án tốt nghiệp kĩ sư Ngành công nghệ thông tin
LỜI CẢM ƠN


Trong suốt quá trình học tập và hoàn thành đồ án tốt nghiệp, em đã nhận
được sự hướng dẫn, giúp đỡ quý báu của các thầy cô và các bạn. Với lòng kính
trọng và biết ơn sâu sắc em xin được bày tỏ lới cảm ơn chân thành tới:
Giảng Viên Phạm Trí Công người thầy đã tận tình giúp đỡ, trực tiếp chỉ bảo,
hướng dẫn em trong suốt quá trình thực tập và làm đồ án tốt nghiệp. Trong quá trình
học tập với thầy em không ngừng học tâp và tiếp thu thêm được rất nhiều kiến thức
bổ ích mà còn học tập được tinh thần làm việc, thái độ nghiên cứu nghiêm túc, hiệu
quả. Đây là những điều rất cần thiết cho em trong quá trình học tập và làm việc sau
này.
Các thầy cô trong trường Đại học Thủy Lợi nói chung và các thầy cô trong
khoa Công nghệ thông tin nói riêng đã tận tình giảng dạy, truyền đạt cho em những
kiến thức và kinh nghiệm quý báu trong suốt thời gian học tập tại trường.
Em xin gửi lời cảm ơn tới gia đình, bạn bè đã luôn ở bên động viên, góp ý,
giúp đỡ em trong suốt quá trình học tập của mình.
Mặc dù em đã cố gắng hoàn thành đồ án tốt nghiệp của mình với khả năng
của mình, nhưng do năng lực và kinh nghiệm còn hạn chế nê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à tận tình góp ý chỉ bảo
của các thầy cô và các bạn.
Sinh viên: Trần Ngọc Khải Lớp: 49 TH1
2
Đồ án tốt nghiệp kĩ sư Ngành công nghệ thông tin
MỤC LỤC
CHƯƠNG 1 : GIỚI THIỆU 5
1.1 ĐẶT VẤN ĐỀ 5
1.2 MỤC TIÊU ĐỀ TÀI 5
1.3 NỘI DUNG ĐỀ TÀI 5
1.4 HƯỚNG GIẢI QUYẾT 6
1.5 LỰA CHỌN CÔNG NGHỆ VÀ MÔI TRƯỜNG PHÁT TRIỂN 6
2.1 WAMP 9
2.1.1 Các đặc điểm nổi bật của Wamp 9

2.2 Cơ sở dữ liệu My SQL 10
2.2.1 Giới thiệu chung về MYSQL 10
2.2.2 Các đối tượng của MYSQL 10
2.3 PHP 13
2.3.1 Giới thiệu chung về PHP 13
2.3.2 Lý do chọn PHP 14
2.4 FRAMEWORK MVC 15
2.4.1 Mô hình MVC 15
2.4.2 Ưu điểm và nhược điểm của mô hình MVC 16
2.4.3 Khái quát về PHP Framework 17
2.4.4 Khái quát simple framework MVC 25
CHƯƠNG 3 :KHẢO SÁT VÀ PHÂN TÍCH YÊU CẦU HỆ THỐNG 28
3.1 KHẢO SÁT YÊU CẦU HỆ THỐNG 28
3.1.1 Xác định các yêu cầu của hệ thống 28
3.1.2 Mô tả chi tiết chức năng với từng đối tượng sử dụng hệ thống 28
3.2 THIẾT KẾ HỆ THỐNG 30
3.2.1 Mô hình phân cấp chức năng 30
3.2.2 Mô hình UseCase 32
3.2.3 Kiến trúc hệ thống 33
3.2.4 Chức năng đăng nhập 37
3.2.5 Mô hình Sequence Diagram cho các chức năng chính của hệ thống 38
3.2.6 Mô hình Class Diagram 45
3.3 THIẾT KẾ CƠ SƠ DỮ LIỆU 50
3.3.1 Các thực thể trong hệ thống 50
3.3.2 Mô hình quan hệ giữa các thực thể của hệ thống 51
3.3.3 Mô hình quan hệ 52
3.3.4 Các bảng của cơ sở dữ liệu 52
CHƯƠNG 4: KẾT QUẢ THỰC HIỆN 53
4.1 GIAO DIỆN NGƯỜI DÙNG 53
4.2 GIAO DIỆN PHÍA NGƯỜI QUẢN TRỊ WEBSITE 56

CHƯƠNG 5 : KẾT LUẬN 60
5.1 ĐÁNH GIÁ 60
5.2 HƯỚNG PHÁT TRIỂN 60
TÀI LIỆU THAM KHẢO 61
Sinh viên: Trần Ngọc Khải Lớp: 49 TH1
3
Đồ án tốt nghiệp kĩ sư Ngành công nghệ thông tin
MỤC LỤC CÁC HÌNH ẢNH
CHƯƠNG 1 : GIỚI THIỆU 5
1.1 ĐẶT VẤN ĐỀ 5
1.2 MỤC TIÊU ĐỀ TÀI 5
1.3 NỘI DUNG ĐỀ TÀI 5
1.4 HƯỚNG GIẢI QUYẾT 6
1.5 LỰA CHỌN CÔNG NGHỆ VÀ MÔI TRƯỜNG PHÁT TRIỂN 6
2.1 WAMP 9
2.1.1 Các đặc điểm nổi bật của Wamp 9
2.2 Cơ sở dữ liệu My SQL 10
2.2.1 Giới thiệu chung về MYSQL 10
2.2.2 Các đối tượng của MYSQL 10
2.3 PHP 13
2.3.1 Giới thiệu chung về PHP 13
2.3.2 Lý do chọn PHP 14
2.4 FRAMEWORK MVC 15
2.4.1 Mô hình MVC 15
2.4.2 Ưu điểm và nhược điểm của mô hình MVC 16
2.4.3 Khái quát về PHP Framework 17
2.4.4 Khái quát simple framework MVC 25
CHƯƠNG 3 :KHẢO SÁT VÀ PHÂN TÍCH YÊU CẦU HỆ THỐNG 28
3.1 KHẢO SÁT YÊU CẦU HỆ THỐNG 28
3.1.1 Xác định các yêu cầu của hệ thống 28

3.1.2 Mô tả chi tiết chức năng với từng đối tượng sử dụng hệ thống 28
3.2 THIẾT KẾ HỆ THỐNG 30
3.2.1 Mô hình phân cấp chức năng 30
3.2.2 Mô hình UseCase 32
3.2.3 Kiến trúc hệ thống 33
3.2.4 Chức năng đăng nhập 37
3.2.5 Mô hình Sequence Diagram cho các chức năng chính của hệ thống 38
3.2.6 Mô hình Class Diagram 45
3.3 THIẾT KẾ CƠ SƠ DỮ LIỆU 50
3.3.1 Các thực thể trong hệ thống 50
3.3.2 Mô hình quan hệ giữa các thực thể của hệ thống 51
3.3.3 Mô hình quan hệ 52
3.3.4 Các bảng của cơ sở dữ liệu 52
CHƯƠNG 4: KẾT QUẢ THỰC HIỆN 53
4.1 GIAO DIỆN NGƯỜI DÙNG 53
4.2 GIAO DIỆN PHÍA NGƯỜI QUẢN TRỊ WEBSITE 56
CHƯƠNG 5 : KẾT LUẬN 60
5.1 ĐÁNH GIÁ 60
5.2 HƯỚNG PHÁT TRIỂN 60
TÀI LIỆU THAM KHẢO 61
Sinh viên: Trần Ngọc Khải Lớp: 49 TH1
4
Đồ án tốt nghiệp kĩ sư Ngành công nghệ thông tin
CHƯƠNG 1 : GIỚI THIỆU
1.1 ĐẶT VẤN ĐỀ
Cùng với sự phát triển không ngừng về kỹ thuật máy tính và mạng điện tử,
công nghệ thông tin cũng được những công nghệ có đẳng cấp cao và lần lượt chinh
phục hết đỉnh cao này đến đỉnh cao khác. Mạng Internet là một trong những sản
phẩm có giá trị hết sức lớn lao và ngày càng trở nên một công cụ không thể thiếu, là
nền tảng chính cho sự truyền tải, trao đổi thông tin trên toàn cầu.

Chính vì thế với những kiến thức thu được khi ngồi trên ghế nhà trường cùng
với sự hướng dẫn của các thầy em xin chọn đề tài “Xây dựng website bán quần áo
online”. Website được xây dựng trên Framework MVC, Framework này được viết
bằng PHP, sử dụng hệ quản trị cơ sở dữ liệu MYSQL.
1.2 MỤC TIÊU ĐỀ TÀI
Đề tài “Xây dựng website bán quần áo online”. với mục tiêu làm một
website bán quần áo online bảo đảm tính tiện dụng đối với cả người sử dụng và
người quản trị. Nội dung của website được trình bày rõ ràng, mạch lạc,dễ sử dụng
và thân thiện với người dùng
1.3 NỘI DUNG ĐỀ TÀI
Nội dung chính là xử lý các chức năng về quản lý và tìm kiếm thông tin:
• Quản lý sản phẩm
• Quản lý các chuyên mục của sản phẩm
• Quản lý User
• Cập nhập thông tin một cách thường xuyên.
• Chỉnh sửa, thay đổi khi thông tin không còn phù hợp.
Website có các chức năng được phân cấp rõ ràng, hỗ trợ người dùng cập nhập dữ
liệu chinh xác và nhanh chóng
Sinh viên: Trần Ngọc Khải Lớp: 49 TH1
5
Đồ án tốt nghiệp kĩ sư Ngành công nghệ thông tin
1.4 HƯỚNG GIẢI QUYẾT
Để xây dựng được Website có tính thực tế cao, dễ sử dụng, thân thiện, thỏa mãn các
yêu cầu với người dùng thì yêu cầu:
• Cần phải khảo sát thông tin của hệ thống một cách chi tiết và chính xác
• Phân tích dữ liệu đầu vào, đầu ra một cách rõ ràng, chặt chẽ và chính xác.
• Trên cơ sở những thông tin đã thu thập được tiến hành xây dựng sơ đồ chức
năng ngiệp vụ, mô hình UseCase, mô hình Sequence Diagram, mô hình Class
Diagram, mô hình quan hệ giữa các thực thể,mô hình quan hệ…
• Thiết kế một số modul quan trọng( lưu trữ, tìm kiếm, xử lý thông tin).

• Thiết kế giao diện: Là yêu cầu khá quan trọng, giao diện phải đảm bảo vừa
mang tính nghiệp vụ lại vừa đẹp mắt, dễ sử dụng,thân thiện với người dùng…
• Lập dự kiến xây dựng cơ sở dữ liệu cho hệ thống, phân tích, đánh giá được
phạm vi lưu trữ, độ an toàn của dữ liệu khi vận hành.
• Kết quả cuối cùng của hệ thống phải có tính ưu việt, khả năng xử lý được
lượng thông tin lớn, lưu trữ khoa học, thuận tiện và bảo mật cao
Hệ thống được xây dựng trên Framework MVC được viết bằng ngôn ngữ PHP và
hệ quản trị cơ sở dữ liệu MYSQL 5.1.36.
1.5 LỰA CHỌN CÔNG NGHỆ VÀ MÔI TRƯỜNG PHÁT TRIỂN
Hiện nay có rất nhiều công nghệ được sử dụng để phát triển website (PHP,
ASP, ASP.NET, JSP ) để lựa chọn công cụ phát triển một cách thích hợp dựa trên
các thông số cơ bản như: tính kinh tế, khả năng ứng dụng, mức độ bảo mật, môi
trường hỗ trợ và tốc độ xử lý Đây là bảng so sánh các công nghệ phát triển
website:
PHP:
• Tốc độ xử lý nhanh, hiệu quả cao
• Chi phí giá thành thấp(ngôn ngữ free không tốn chi phí mua bản quyền)
• Thời gian code và triển nhanh, đơn giản
• Số lượng nhà cung cấp hosting nhiều, dễ lựa chọn
Sinh viên: Trần Ngọc Khải Lớp: 49 TH1
6
Đồ án tốt nghiệp kĩ sư Ngành công nghệ thông tin
• 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 và thân thiện hơn đối với người dùng.
ASP.NET:
• Tốc độ xử lý nhanh, hiệu quả cao

• Chi phí giá thành cao (do một phần phải mua bản quyền)
• Thời gian code và triển khai hơi phức tạp, chậm hơn PHP
• 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 nhiều, khả năng chọn lựa một trang web phù hợp
tốt hơn
• Mở rộng và phát triển website dẽ dà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 và thân thiện hơn đối với người dùng.
ASP
• Tốc độ xử lý rất chậm
• Chi phí giá thành trung bình (do một phần phải mua bản quyền)
• 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
JSP/java
• Hơi chậm
• Chi phí giá thành cao
• Thời gian code và triển khai hơi phức tạp, chậm hơn PHP
Sinh viên: Trần Ngọc Khải Lớp: 49 TH1
7
Đồ án tốt nghiệp kĩ sư Ngành công nghệ thông tin
• Số lượng nhà cung cấp hosting ít, khó tìm
• Số nhà cung cấp website ít, khả năng chọn lựa để xây dựng 1trang web phù
hợp rất khó
• 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.
Đối với đa số website nên chọn ngôn ngữ phát triển website PHP/MySQL 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
xem xét và cân nhắc, em đã lựa chọn ngôn ngữ PHP/MySQL để 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 .
• Framework MVC được viết bằng ngôn ngữ PHP.
• Thiết kế giao diện bằng ngôn ngữ HTML và CSS
Cài đặt localhost trên window với Wamp server để chạy chương trình
Sinh viên: Trần Ngọc Khải Lớp: 49 TH1
8
Đồ án tốt nghiệp kĩ sư Ngành công nghệ thông tin
CHƯƠNG 2 : GIỚI THIỆU VỀ WAMP,MYSQL,PHP VÀ
FRAMEWORK MVC
2.1 WAMP
2.1.1 Các đặc điểm nổi bật của Wamp
Wamp: Một gói phần mềm Web Server tất cả trong một (All-in-One)
gồm: Apache, MySQL, PHP chạy trên nền Windows. Chồng phần mềm Wamp chu
cấp các nhà phát triển với bốn phần tử then chốt của một máy chủ web: một hệ điều
hành, kho dữ liệu, máy chủ đãi web và phần mềm ra văn mã cho mạng web. Sự hợp
lại của việc sử dụng những chương trình này gọi là một chồng trên máy chủ (server
stack). Trong chồng này, Microsoft Windows hệ điều hành (operating system),
Apache là phần mềm máy chủ web, MySQL lo liệu các thành phần kho dữ liệu,
trong lúc PHP, Python, hoặc PERL tượng trưng các ngôn ngữ chủ động ra văn mã.
Nó cho phép bạn tạo các ứng dụng Web với Apache, PHP, và cơ sở dữ liệu
MySQL. Nó cũng đi kèm với PHPMyAdmin và SQLiteManager để dễ dàng quản lý
cơ sở dữ liệu của bạn. WampServer cài đặt tự động (cài đặt), và cách sử dụng của
nó là rất trực quan. Bạn sẽ có thể điều chỉnh ngay cả máy chủ của bạn mà không
cần chạm vào các tập tin cài đặt. WampServer là chỉ đóng gói giải pháp mà sẽ cho
phép bạn sao chép sản xuất máy chủ của bạn. Khi WampServer được cài đặt, bạn có
khả năng thêm bao nhiêu Apache, MySQL, và PHP bản phát hành như bạn muốn.
WampServer cũng có một trayicon để quản lý các máy chủ của bạn và các thiết lập

của nó.
Các đặc điểm nổi bật của Wamp :
• Có thể cài đặt WAMP dễ dàng.
• WAMP được cập nhật đều đặn.
• Cho phép lựa chọn các phiên bản PHP, MySQL khác nhau.
• Rất tốt cho việc tạo máy chủ Web để chạy thử, thiết kế Website bằng PHP.
• Hỗ trợ tốt cho Joomla 1.5, Joomla 1.0
• Hỗ trợ phiên bản PHP5 mới nhất
Sinh viên: Trần Ngọc Khải Lớp: 49 TH1
9
Đồ án tốt nghiệp kĩ sư Ngành công nghệ thông tin
• Tương thích Windows XP / Windows Vista / Windows 7
• Hoàn toàn miễn phí
2.2 Cơ sở dữ liệu My SQL
2.2.1 Giới thiệu chung về MYSQL
MySQL là hệ quản trị cơ sở dữ liệu mã nguồn mở phổ biến nhất thế giới và
được các nhà phát triển rất ưa chuộng trong quá trình phát triển ứng dụng. Vì
MySQL là cơ sở dữ liệu tốc độ cao, ổn định và dễ sử dụng, có tính khả chuyển, hoạt
động trên nhiều hệ điều hành cung cấp một hệ thống lớn các hàm tiện ích rất mạnh.
Với tốc độ và tính bảo mật cao, MySQL rất thích hợp cho các ứng dụng có truy cập
CSDL trên internet. MySQL rất thích hợp cho các ứng dụng có truy cập CSDL từ
trên internet. MySQL được sử dụng miễn phí hoàn toàn .Nó có nhiều phiên bản cho
các hệ điều hành khác nhau: phiên bản Win32 cho các hệ điều hành dòng Windows,
Linux, Mac OS X, Unix, FreeBSD, NetBSD, Novell NetWare, SGI Irix, Solaris,
SunOS,…
MySQL là một trong những ví dụ rất cơ bản về Hệ Quản Trị Cơ Sở Dữ liệu
quan hệ sử dụng ngôn ngữ truy vấn có cấu trúc (SQL).
MySQL được sử dụng cho việc bổ trợ PHP, Perl, và nhiều ngôn ngữ khác, nó
làm nơi lưu trữ những thông tin trên các trang web viết bằng PHP hay Perl,…
2.2.2 Các đối tượng của MYSQL

• Bảng - Table :
Trong cơ sở dữ liệu, bảng (Table) là thành phần chính của chúng. Do đó
bảng là đối tượng lưu trữ dữ liệu thực, khi cần giao tiếp với cơ sở dữ liệu khác,
bảng là đối tượng căn bản nhất trong bất kỳ loại cơ sở dữ liệu nào, chúng được
coi như một miền dữ liệu.
Bảng dùng để lưu trữ tất cả dữ liệu và được tổ chức thành nhiều hàng và
nhiều cột. Mỗi cột trong bảng có thể lưu một loại thông tin nhất định gọi là kiểu
dữ liệu, dữ liệu nhập vào có thể chấp nhận hoặc từ chối tùy thuộc vào nguyên
Sinh viên: Trần Ngọc Khải Lớp: 49 TH1
10
Đồ án tốt nghiệp kĩ sư Ngành công nghệ thông tin
tắc ràng buộc dữ liệu hoặc dữ liệu tương thích do hệ thống hay người dùng định
nghĩa.
Khi định nghĩa cơ sở dữ liệu ta cần quan tâm đến các thông số sau:
• Key: Trường đó có khóa hay không.
• ID: Trường có thuộc tính Identity hay không.
• Column Name: Tên của trường.
• Data type: Loại dữ liệu cho trường tương ứng.
• Size: Kích thước trường dữ liệu.
• Allow null: Cho phép giá trị rỗng lưu trong trường hay không.
• Default: Giá trị mặc nhiên cho trường.
• Identity: Nếu bạn cần sử dụng một trường có giá trị tự động như
Autonumber trong access, trường này not null và Identity: yes (no).
• Identity seed: Nếu trường (cột) này là identity, cần số bắt đầu số 1
hoặc 2 …
• Chỉ mục - Indexs:
Index hay còn gọi là chỉ mục, đối tượng này chỉ tồn tại trong bảng hay khung
nhìn (view). Chỉ mục này có ảnh hưởng tới tốc độ truy cập số liệu, nhất là khi
cần tìm kiếm thông tin trên bảng, chỉ mục giúp tăng tốc độ cho việc tìm kiếm.
• Clustered: Ứng với mỗi chỉ mục này một bảng chỉ có một chỉ mục, và

số liệu được sắp xếp theo trang.
• Non-clustered: Ứng với chỉ mục này một bảng có thể có nhiều chỉ
mục và dữ liệu được sắp xếp theo trường dữ liệu mà bạn chỏ tới.
• Bẫy lỗi - Triggers:
Nếu đối tượng chỉ tồn tại trong bảng, cụ thể là một đoạn mã, và tự động thực
thi khi có một hành động nào đó xảy ra đối với dữ liệu trong bảng như: Insert,
Update, Delete.
Trigger có thể sử dụng để bẫy rất nhiều tình huống như copy dữ liệu, xóa dữ
liệu, cập nhập dữ liệu, kiểm tra dữ liệu theo tiêu chuẩn nào đó.
• Ràng buộc - Constaints:
Sinh viên: Trần Ngọc Khải Lớp: 49 TH1
11
Đồ án tốt nghiệp kĩ sư Ngành công nghệ thông tin
Là một đối tượng, nó là một phần nhỏ trong bảng, chúng ràng buộc dữ liệu
trong bảng hoặc các bảng khác phải tuân theo một quy tắc nào đó.
• Khung nhìn (View):
Là khung nhìn hay một bảng ảo của bảng. Cũng giống như bảng nhưng View
không thể chứa dữ liệu, bản thân View có thể tạo thêm trường mới dựa vào
những phép toán, biểu thức của MY SQL. Bên cạnh đó View có thể kết nối
nhiều bảng lại với nhau theo quan hệ nhất định cùng với những tiêu chuẩn,
nhằm tạo ra một bảng theo nhu cầu của người dùng.
View cho phép bạn chia ngang hay dọc thông tin từ một hay nhiều bảng
trong cơ sở dữ liệu, sử dụng View như là một đối tượng trong MY SQL, khi cần
thiết sử dụng đến View, kết quả View trả về bằng việc truy vấn dữ liệu theo yêu
cầu người dùng.
Mục đích sử dụng View:
• Hạn chế tính phức tạp của dữ liệu đến người dùng.
• Kết nối dữ liệu từ nhiều bảng lại với nhau.
• Sử dụng tài nguyên Server để thực hiện việc truy vấn.
• Tạo ra một bảng ảo có dữ liệu như yêu cầu.

• Kết hợp một số hàm và phương thức tạo ra các cột mới.
• Thủ tục nội (stored Procedure):
Thủ tục nội hay còn gọi là Spocs, tiếp tục phát triển như một phần lập trình
SQL trên cơ sở dữ liệu. Store Procedure cho phép khai báo biến, nhận tham số
cúng như thực thi các phát biểu có điều kiện. Store Procedure có các ưu điểm
sau:
• Kế thừa tất cả các phát triển của SQL, và là một đối tượng xử lý số
liệu hiệu quả nhất khi dùng MY SQL.
• Tiết kiệm thời gian thực thi trên dữ liệu.
• Có thể gọi những Stored Procedure theo cách gọi của thủ tục hay hàm
trong các ngôn ngữ lập trình truyền thống, đồng thời sử dụng lại khi
có yêu cầu.
Sinh viên: Trần Ngọc Khải Lớp: 49 TH1
12
Đồ án tốt nghiệp kĩ sư Ngành công nghệ thông tin
2.3 PHP
2.3.1 Giới thiệu chung về PHP
PHP được phát triển từ ngôn ngữ kịch bản (script) với mục địch xây dựng
trang Web cá nhân (Personal Home Page). Sau đó đã được phát triển thành một
ngôn ngữ hoàn chỉnh và được ưa chuộng trên toàn thế giói trong việc phát triển các
ứng dụng Web based.
PHP (viết tắt hồi quy "PHP: Hypertext Preprocessor") là một ngôn ngữ lập
trình kịch bản hay một loại mã lệnh chủ yếu được dùng để phát triển các ứng dụng
viết cho máy chủ, mã nguồn mở, dùng cho mục đích tổng quát. Nó rất thích hợp với
web và có thể dễ dàng nhúng vào trang HTML. Do được tối ưu hóa cho các ứng
dụng web, tốc độ nhanh, nhỏ gọn, cú pháp giống C và Java, dễ học và thời gian xây
dựng sản phẩm tương đối ngắn hơn so với các ngôn ngữ khác nên PHP đã nhanh
chóng trở thành một ngôn ngữ lập trình web phổ biến nhất thế giới.
Chương trình PHP hoạt động như thế nào? Trước tiên chúng ta hãy tìm hiểu
cách thức hoạt động của hệ trình duyệt (Web Client) và máy chủ cung cấp dịch vụ

Web (Web server ):
Bước 1: Trình duyệt gửi một yêu cầu HTTP đến máy chủ, yêu cầu một file nào đó
Bước 2: Máy chủ sẽ chuyển yêu cầu này đến chương trình xử lý tương ứng,
chính là chương trình Web server.
Bước 3: Web server phân tích chuỗi yêu cầu nhận được, kiểm tra xem trình
duyệt ở máy khách yêu cầu gì. Nếu đó là các file bình thường (không phải là các
file chứa các đoạn mã script thực thi phía máy chủ), nó sẽ tìm kiếm file đó và trả về
cho trình duyệt ở máy khách. Còn nếu đó là các file chứa các đoạn mã script thực
thi phía máy chủ (các chương trình CGI, hay các file thư viện liên kết động ISAPI,
hoặc các file *.asp hay *.php), nó sẽ triệu gọi chương trình thực thi các đoạn mã
này. Chương trình này sẽ chịu trách nhiệm chạy các đoạn mã, trả chúng về cho Web
server dưới khuôn dạng của HTML. Sau đó, Web server mới trả kết quả lấy được
cho trình duyệt.
Sinh viên: Trần Ngọc Khải Lớp: 49 TH1
13
Đồ án tốt nghiệp kĩ sư Ngành công nghệ thông tin
Như vậy, chương trình của bạn phải được thực thi trên máy chủ, sau đó mới
được trả về cho trình duyêt. Và đây chính là cái gọi là "Trang Web động". Không
như các trang web tĩnh, trang web động cho phép bạn có sự tương tác với máy chủ
thông qua các đoạn script thực thi phía server. Nhờ có sự tương tác này, bạn có thể
truy xuất cơ sở dữ liệu, lấy thông tin người sử dụng, điều khiển các hoạt động
khác
2.3.2 Lý do chọn PHP
PHP Rất đơn giản đối với nhưng người còn xa lạ với chương trình này đây là
sự lôi cuốn mạnh mẽ nhất. Thậm chí là rất ít hoặc không có một chương trình nào
có thể tạo ra một tốc độ đáng kinh ngặc trong việc phát triển bành trướng như PHP.
Bởi vì nó đc thiết kế đặc biệt trong các ứng dụng Web, PHP xây dựng được rất
nhiều tính năng để đáp ứng những nhu nhu cầu chung nhất
PHP là một mã nguồn thông tin mở: Bởi vì mã nguồn của PHP sẵn có nên
cộng đồng các nhà phát triển Web luôn có ý thức cải tiến nó, nâng cao để khắc phục

các lỗi trong chương trình này. PHP rất ổn định và tương hợp, PHP Ngoài ra PHP
chạy được trên nhiều hệ điều hành khác nhau.
Rút ngắn thời gian phát triển :
• PHP cho phép bạn tách phần HTML code và phần script, do đó có thể độc
lập giữa công việc phát triển mã và thiết kế. Điều này vừa giúp lập trình viên
dễ dàng hơn vừa có thể làm cho chương trình mềm dẻo hơn trong việc thay
đổi giao diện.
PHP là phần mềm mã nguồn mở :
• PHP không chỉ là phần mềm mã nguồn mở mà còn thực sự miễn phí (kể cả
khi bạn sử dụng cho mục đích thương mại).
• Do là phần mềm mã nguồn mở, các lỗi (bug) của PHP được công khai và
nhanh chóng được sửa chữa bởi nhiều chuyên gia.
Tốc độ :
• Nhờ vào sức mạnh của Zend Engine, khi so sánh PHP với ASP, có thể thấy
PHP vượt hơn ở một số test, vượt trội ở tốc độ biên dịch.
Sinh viên: Trần Ngọc Khải Lớp: 49 TH1
14
Đồ án tốt nghiệp kĩ sư Ngành công nghệ thông tin
Tính khả chuyển :
• PHP được thiết kế để chạy trên nhiều nền tảng khác nhau, có thể làm việc
với nhiều phần mềm máy chủ, cơ sở dữ liệu (ví dụ: bạn có thể phát triển dự
án trên UNIX, sau đó chuyển sang NT mà không gặp phải bất cứ vấn đề gì).
2.4 FRAMEWORK MVC
2.4.1 Mô hình MVC
controller
user
1.Request
view
5.Response
Model

2.Request
4.Request
3.Response
Hình 2.1: Mô hình MVC
MVC = Model - View - Controller
Kiến trúc MVC là việc chia tất cả mục của một ứng dụng ra làm ba thành phần
(component) khác nhau Model, View và Controller. Các thành phần của kiến trúc
MVC một trách nhiệm duy nhất và không phụ thuộc vào các thành phần khác.
Những sự thay đổi trong một thành phần sẽ không có hoặc là có rất ít ảnh hưởng
đến các thành phần khác. Các trách nhiệm của mỗi thành phần là:
• Model ( tạm dịch là phần “Mô hình” ): Model được giao nhiệm vụ cung cấp
dữ liệu cho cơ sở dữ liệu và lưu dữ liệu vào các kho chứa dữ liệu. Tất cả các
nghiệp vụ logic được thực thi ở Model. Dữ liệu vào từ người dùng sẽ thông
qua View được kiểm tra ở Model trước khi lưu vào cơ sở dữ liệu. Việc truy
xuất, xác nhận, và lưu dữ liệu là một phần của Model.
Sinh viên: Trần Ngọc Khải Lớp: 49 TH1
15
Đồ án tốt nghiệp kĩ sư Ngành công nghệ thông tin
• View (tạm dịch là phần “Hiển thị”): Là phần giao diện với người dùng. View
hiển thị các thông tin cho người dùng của ứng dụng và được giao nhiệm vụ
cho việc nhận các dữ liệu vào từ người dùng, gửi đi các yêu cầu đến bộ điều
khiển, sau đó là nhận lại các phản hồi từ bộ điều khiển và hiển thị kết quả cho
người dùng. Các trang HTML, JSP, các thư viện thể và các file nguồn là một
phần của thành phần View.
• Controller (tạm dịch là phần “Điều khiển”): Controller là tầng trung gian giữa
Model và View. Controller được giao nhiệm vụ nhận các yêu cầu từ phía máy
khách. Một yêu cầu được nhận từ máy khách được thực hiện bởi một chức
năng logic thích hợp từ thành phần Model và sau đó sinh ra các kết quả cho
người dùng và được thành phần View hiển thị. ActionServlet, Action,
ActionForm và strutsconfig.xml là các phần của Controller.

Với cơ sở là kiến trúc MVC, ta có thể xây dựng các ứng dụng của mình, tránh
được rất nhiều những vất vả khi bảo trì, thay đổi. Những thay đổi ở mỗi thành phần
thường rất ít khi ảnh hưởng đến các thành phần khác.
2.4.2 Ưu điểm và nhược điểm của mô hình MVC
• Ưu điểm
Mô hình MVC giúp cho ứng dụng dễ bảo trì, mobule hóa, và được xây dựng
nhanh chóng. MVC tách các tác vụ của ứng dụng thành các phần riêng lẽ model,
view, controller giúp cho việc xây dựng ứng dụng nhẹ nhàng hơn. Dễ dàng thêm
các tính năng mới, và các tính năng cũ có thể dễ dàng thay đổi. MVC cho phép các
nhà phát triển và các nhà thiết kế có thể làm việc đồng thời với nhau, kể cả trong
bước phát triển prototype. MVC cho phép thay đổi trong 1 phần của ứng dụng mà
không ảnh hưởng đến các phần khác.
Sự dễ dàng trong viết code test là một thuận lợi khi áp dụng MVC. Test
những component của chương trình trở nên rất khó khăn khi chúng phụ thuộc chặt
chẽ vào nhau, đặc biệt đối với những thành phần giao diện. Để test giao diện của
một phần mềm, tất nhiên bạn phải qua các bước cài đặt và đôi khi điều đó trở nên
rất mất thời gian khi chỉ để test một chức năng đơn giản. Tệ hơn khi xảy ra lỗi,
Sinh viên: Trần Ngọc Khải Lớp: 49 TH1
16
Đồ án tốt nghiệp kĩ sư Ngành công nghệ thông tin
chúng ta sẽ rất khó để phát hiện lỗi ở phần nào. Đó là lý do tại sao chia nhỏ các
thành phần chức năng là một trong những chiều hướng chính của các thiết kế quan
trọng. MVC chia nhỏ các vấn đề như lưu trữ, hiển thị và cập nhật dữ liệu thành 3
nhóm components, những component này có thể được test độc lập với nhau.
Ngoài vấn đề về sự phụ thuộc, giao diện của phần mềm cũng rất phức tạp khi
muốn test. Người ta thường sử dụng người thật để test giao diện, hoặc sẽ phải viết
những script test để giả lập những thao tác của con người. Để viết những script này
thường rất mất thời gian và phức tạp. MVC không giải quyết được vấn đề về test
giao diện, nhưng nó tách rời phần dữ liệu Model ra khỏi những xử lý hiển thị và cho
phép MODEL có thể được test độc lập với phần hiển thị và điều đó sẽ giảm thiểu

những test case liên quan đến giao diện.
• Nhược điểm
Chúng ta không nên dùng mô hình MVC một cách hoàn toàn cứng nhắc mà
phải dùng mô hình MVC một cách linh hoạt trong từng Framework.
2.4.3 Khái quát về PHP Framework
2.4.3.1 PHP Framewrk là gì?
PHP là 1 ngôn ngữ script rất phổ biến hiện nay bởi những lý do: linh hoạt, dễ
sử dụng, dễ học… nhưng đôi khi việc viết mã PHP, hay bất cứ ngôn ngữ (lập trình)
nào khác, có thể trở nên đơn điệu và lủng củng. Đó là lúc PHP framework có thể
giúp ban.
PHP frameworks làm cho sự phát triển của những ứng dụng web viết bằng
ngôn ngữ PHP trở nên trôi chảy hơn, bằng cách cung cấp 1 cấu trúc cơ bản để xây
dựng những ứng dụng đó. Hay nói cách khác, PHP framework giúp đỡ các bạn thúc
đẩy nhanh chóng quá trình phát triển ứng dụng, giúp bạn tiết kiệm được thời gian,
tăng sự ổn định cho ứng dụng, và giảm thiểu số lần phải viết lại mã cho lập trình
viên. Ngoài ra Framework còn giúp những người mới bắt đầu có thể xây dựng các
ứng dụng ổn định hơn nhờ việc tương tác chính xác giữa các Database, mã (PHP)
và giao diện (HTML) 1 cách riêng biệt. Điều này cho phép bạn dành nhiều thời gian
Sinh viên: Trần Ngọc Khải Lớp: 49 TH1
17
Đồ án tốt nghiệp kĩ sư Ngành công nghệ thông tin
để tạo ra các ứng dụng web, hơn là phí thời gian để viết các đoạn mã lặp lại trong 1
project.
Ý tưởng chung đằng sau cách thức làm việc của 1 PHP framework được kể
đến là Model View Controller (MVC). MVC là 1 mô hình (kiến trúc) trong lập
trình, cho phép tách biệt các mã nghiệp vụ (business logic) và giao diện thành các
phần riêng biệt, điều này đồng nghĩa với việc ta có thể chỉnh sửa chúng 1 cách riêng
lẻ. Trong cụm từ MVC thì: Model (M) có thể hiểu là phần xử lý các thao tác về
nghiệp vụ (business logic), View được hiểu là phần xử lý lớp giao diện
(presentation layer), và Controller làm nhiệm vụ lọc các request đc gọi từ user, có

chức năng như 1 route: điều chỉnh, phân luồng các yêu cầu để gọi đúng Model &
View thích hợp. Về cơ bản, MVC chia nhỏ quá trình xử lý của 1 ứng dụng, vì thế
nên bạn có thể làm việc trên từng thành phần riêng lẻ, trong khi những thành phần
khác sẽ không bị ảnh hưởng tới. Thực chất, điều này giúp đỡ bạn lập trình PHP
nhanh hơn và ít phức tạp hơn.
2.4.3.2 Tại sao chúng ta nên sử dụng PHP Framework?
Có rất nhiều lý do khác nhau để các lập trình viên sử dụng PHP framework,
nhưng 1 trong những lý do chính vẫn là khả năng giúp các lập trình viền tăng tốc
quá trình phát triển ứng dụng. Việc sử dụng lại các mã lệnh giống nhau trong nhiều
project sẽ giúp các bạn tiết kiệm được thời gian và công sức 1 cách đáng kể. Một
framework sẽ cung cấp sẵn các module nền tảng cần thiết để xây dựng 1 project, vì
thế, các lập trình viên có thể tận dụng được thời gian để phát triển các ứng dụng
thực tế, hơn là mất thời gian để xây dựng lại nền tảng trên mỗi project
Sự ổn định là 1 lý do lớn đối với các lập trình viên đang sử dụng Framework.
Tính đơn giản là 1 điểm mạnh của PHP, đó là lý do tại sao lại có nhiều người thích
sử dụng nó, nhưng đồng thời đó cũng là điểm yếu của nó. PHP thì khá dễ học và sử
dụng, đặc biệt là đối với những người mới làm quen với lập trình, tuy nhiên, họ có
thể thường xuyên viết mã 1 cách không khoa học và thậm chí không hề nhận thức
được điều này, với PHP, trong nhiều trường hợp các ứng dụng vẫn sẽ làm việc
Sinh viên: Trần Ngọc Khải Lớp: 49 TH1
18
Đồ án tốt nghiệp kĩ sư Ngành công nghệ thông tin
được, nhưng vô tình họ có thể tạo ra các lỗ hổng bảo mật lớn trong mã lệnh của
mình, và bị hacker khai thác.
Hầu hết các PHP framework đều có sẵn rất nhiều thành phần mở rộng
(extensive), và cũng có rất nhiều framework khác nhau để các bạn lựa chọn. Bạn
thậm chí còn có thể tự viết riêng cho mình 1 framework. Tuy nhiên, bạn nên cân
nhắc kỹ trước khi quyết định sử dụng 1 framework nào cho mình hay không, nên tự
đặt câu hỏi cho chính mình là: Nó có tiết kiệm được cho bạn thời gian và công sức
hay không? Có giúp ứng dụng bạn hoạt động tốt hơn không? Có cải thiện được sự

ổn định cho ứng dụng không? Hãy tìm ra câu trả lời cho chính mình để quyết định
xem bạn có cần xài framework hay chưa, và nên xài framework nào.
2.4.3.3 Khi nào thì sử dụng PHP Framework?
Đây thường là 1 câu hỏi chung của cả những người đã có kinh nghiệm và mới
bắt đầu trong lập trình PHP, và cũng không có câu trả lời trực tiếp nào cho câu hỏi
này. Với những bạn mới bắt đầu, 1 framework cũng có cung cấp những tính năng
đơn giản và ổn định, vì thế bạn cũng nên tập sử dụng framework bất cứ khi có thể.
Nó sẽ giúp bạn giảm bớt, hoặc loại bỏ các đoạn mã thiếu tính khoa học, và tăng tốc
cho quá trình xây dựng ứng dụng của bạn.
Mặt khác, đối với các lập trình viên PHP đã có kinh nghiệm, framework được
xem như 1 công cụ giúp đỡ các lập trình viên còn yếu, chưa biết làm thế nào để viết
mã 1 cách gọn gàng, tốt hơn và có khoa học. Cho dù điều này là đúng hay sai trong
các cuộc thảo luận, nhưng sự thật không thể phủ nhận là PHP framework là 1 công
cụ được sử dụng để tiết kiệm thời gian và giúp cho việc viết code chặt chẽ hơn.
Khi làm việc trên 1 project với thời gian giới hạn chặt chẽ, sử dụng PHP framework
là 1 lợi thế rất lớn, nó có thể giúp tăng tốc quá trình viết mã. Vì thế, nếu bạn đang
làm việc trong 1 tình trạng thời gian gấp rút, PHP framework sẽ rất có ích cho bạn.
Một trường hợp khác, bạn nên quan tâm đến PHP framework là khi bạn làm 1
project với số lượng mã phải viết quá lớn, nó sẽ giúp công việc của bạn trở nên bớt
dài dòng hơn.
Sinh viên: Trần Ngọc Khải Lớp: 49 TH1
19
Đồ án tốt nghiệp kĩ sư Ngành công nghệ thông tin
2.4.3.4 Những điểm cần lưu ý khi lựa chọn 1 PHP Framework?
Có rất nhiều loại PHP framework sẵn có hiện nay cho bạn lựa chọn, thậm chí
bạn có thể tự tạo ra 1 PHP framework cho riêng mình, tuy nhiên, điều này chỉ được
khuyến khích dành cho các chuyên gia PHP (PHP expert), những người đã có kiến
thức và hiểu biết vững vàng về framework. Khi bạn cần tìm một loại PHP
framework phù hợp nhất với nhu cầu của mình, đừng quên lưu ý về độ phổ biến của
nó, ngoài ra ứng dụng web của bạn được phát triển bởi bao nhiêu người cũng là 1

điều nên lưu ý. Một PHP framework càng được phổ biến, tức là nó càng được nhiều
người sử dụng và phát triển. Mặt khác, nếu bạn muốn xây dựng ứng dụng cho
website của riêng mình, tốt nhất bạn nên chọn 1 PHP framework phù hợp và dễ sử
dụng nhất đối với nhu cầu của bạn - không quan trọng nó có được nhiều người sử
dụng hay không.
Các yếu tố bạn nên lưu ý trước khi muốn tìm kiếm 1 PHP framework để sử
dụng bao gồm như sau: dễ sử dụng, phát triển nhanh và hiệu quả, phổ biến giữa các
developer, có các tính năng mạnh mẽ, có diễn đàn hỗ trợ. Hầu hết các framework
đều có các điểm yếu và thế mạnh khác nhau, ví dụ Zend Framework đã được phổ
biến từ version 1.3 và có đầy đủ các tính năng mạnh mẽ, cộng thêm 1 cộng đồng
phát triển hỗ trợ extension rộng lớn. Ngược lại, CakePHP lại là 1 loại PHP
framework khác, mới ra đời sau này, nhưng lại ít có cộng đồng phát triển hỗ trợ hơn
Zend, nhưng nó cũng được nhiều người lựa chọn vì tính thân thiện với người dùng
và dễ sử dụng.
Như bạn có thể thấy, mỗi loại PHP framework đều có lợi thế riêng của nó.
2.4.3.5 PHP Framework phổ biến nhất hiện nay
Trong vài năm qua, PHP đã tiến triển thành 1 ngôn ngữ script được lựa chọn
bời hầu hết các nhà phát triển website, đã có 1 sự bùng nổ về các PHP framework,
dẫn đến các cuộc tranh luận lớn về đề tài: PHP framework nào là tốt nhất, bởi vì
thực tế không phải tất cả các framework đều được xây dựng trên khuôn khổ dành
cho nhiều người sử dụng. Dưới đây là 5 framework được đánh giá là tốt và phổ biến
nhất hiện nay:
Sinh viên: Trần Ngọc Khải Lớp: 49 TH1
20
Đồ án tốt nghiệp kĩ sư Ngành công nghệ thông tin
The Zend Framework
Hình 2.2: Hình ảnh của Zend Framework
Zend Framework có 1 cộng đồng phát triển rộng lớn, và nó tập trung vào các ứng
dụng web theo phong cách 2.0. Vì được phổ biến rộng rãi, và có 1 cộng đồng người
dùng tích cực, Zend được gọi là “Công ty PHP”. Zend là 1 trong những framework

phổ biến nhất hiện nay. Nó có các tính năng mạnh mẽ, thường được sử dụng cho
các công ty lớn, và bạn cần phải có lượng kiến thức khá sâu rộng về PHP để có thể
sử dụng được nó.
CakePHP
Sinh viên: Trần Ngọc Khải Lớp: 49 TH1
21
Đồ án tốt nghiệp kĩ sư Ngành công nghệ thông tin
Hình 2.3: Hình ảnh của CakePHP
CakePHP là 1 lựa chọn tuyệt với cho những lập trình viên có kiến thức nâng
cao về PHP. Nó dựa trên cùng 1 nguyên tắc thiết kế với Ruby on Rails, là 1
framework mạnh về khía cạnh rapid development, giúp lập trình viên đẩy nhanh
quá trình phát triển ứng dụng của họ. Với các hệ thống hỗ trợ, tính đơn giản và mỗi
trường mở cao đã giúp cho CakePHP trở thành 1 trong những framework phổ biến
nhất hiện nay.
Symfony
Sinh viên: Trần Ngọc Khải Lớp: 49 TH1
22
Đồ án tốt nghiệp kĩ sư Ngành công nghệ thông tin
Hình 2.4: Hình ảnh Symfony
Symfony được ra đời nhằm mục đích giúp đỡ nâng cao hơn cho những lập
trình viên muốn tạo ra các ứng dụng website doanh nghiệp. Đây là 1 PHP
framework mã nguồn mở với đầy đủ các tính năng cần thiết. nhưng nó có vẻ chạy
chậm hơn các framework khác.
Codelgniter
Hình 2.5 : Hình ảnh Codelgniter
Sinh viên: Trần Ngọc Khải Lớp: 49 TH1
23
Đồ án tốt nghiệp kĩ sư Ngành công nghệ thông tin
Codelgniter được biết đến như 1 framework dễ hiểu và dễ sử dụng, cho hiệu
suất cao. Không giống như Symfony, PHP framework này phục vụ mục đích lý

tưởng cho việc xây dưng các ứng dụng chia sẻ, lưu trữ. Nó cung cấp các giải pháp
đơn giản, và có một thư viện video hướng dẫn phong phú, diễn đàn hỗ trợ, và cung
cấp sẵn 1 hướng dẫn sử dụng cho người mới bắt đầu. PHP framework này rất phù
hợp cho 1 người mới làm quen với framework.
Seagull
Hình 2.6 : Hình ảnh Seagull
Seagull cũng là 1 PHP framework tốt phục vụ cho việc xây dưng website và
các GUI. Nó là 1 framework cực kỳ dễ sử dụng cho cả những người mới mới làm
quen với lập trình PHP đến những chuyên gia trong lập trình PHP. Với những người
mới làm quen với lập trình PHP, Seagull cung cấp 1 thư viện các mẫu ứng dụng có
thể được tùy chỉnh để phù hợp với nhu cầu của bạn. Đối với các chuyên gia PHP,
Seagull cung cấp các tùy chọn máy chủ, bao gồm các phương pháp hay nhất, tiêu
chuẩn, và modular codebase - giúp các lập trình viên xây dựng các ứng dụng web
một cách nhanh chóng và dễ dàng. Seagull có một cộng đồng phát triển rộng lớn và
Sinh viên: Trần Ngọc Khải Lớp: 49 TH1
24
Đồ án tốt nghiệp kĩ sư Ngành công nghệ thông tin
nhiều tài liệu hướng dẫn hỗ trợ.
2.4.4 Khái quát simple framework MVC
2.4.4.1 Giới thiệu simple Framework MVC
Mô hình MVC cho Simple framework MVC
Hình 2.7 : Mô hình MVC cho Simple framework MVC
Simple framework MVC là một PHP framework theo cấu trúc MVC được
viết trên PHP4 và hỗ trợ cả PHP4 và PHP5 .Nó là một tập hợp các thư viện viết sẵn
trên PHP giúp chúng ta phát triển web bằng PHP nhanh hơn là cách viết lắp ghép
thông thường, các thư viện này giúp chúng ta thực hiện các tác vụ thông thường của
một ứng dụng web như kết nối và thực hiện các công việc liên quan đến cơ sở dữ
liệu, upload file, xử lý hình ảnh, phân trang, cookie, session, bảo mật … Đồng thời
các thư viện này cũng giúp chúng ta tổ chức code tốt hơn với mô hình MVC.
Cơ bản về simple framework MVC, trong folder cse_wru application trong thư mục

system ta chú ý đến :
• File .htaccess để thực hiện rewrite URL, thay đổi request về file index.php
sẽ có tham số route trong query string sẽ chuyển hướng tất cả các yêu đến
Sinh viên: Trần Ngọc Khải Lớp: 49 TH1
25

×