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

ĐỒ ÁN TỐT NGHIỆP NGÀNH: CÔNG NGHỆ THÔNG TIN Đề tài: XÂY DỰNG VÀ PHÁT TRIỂN ỨNG DỤNG WEBSITE TIN TỨC CÔNG NGHỆ DỰA TRÊN PHP FRAMEWORK LARAVEL

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.1 MB, 24 trang )

TRƯỜNG CAO ĐẲNG CÔNG NGHỆ THÔNG TIN
HỮU NGHỊ VIỆT - HÀN
KHOA CƠNG NGHỆ THƠNG TIN


TĨM TẮT ĐỒ ÁN TỐT NGHIỆP
NGÀNH: CÔNG NGHỆ THÔNG TIN

Đề tài:
XÂY DỰNG VÀ PHÁT TRIỂN ỨNG DỤNG
WEBSITE TIN TỨC CÔNG NGHỆ DỰA TRÊN
PHP FRAMEWORK LARAVEL

SVTH

: Nguyễn Minh Trƣởng

Lớp

: CCCT15A

Niên khóa : 2015 - 2018
CBHD

: TS. Hồ Văn Phi

Đà Nẵng, tháng 06 năm 2018



TRƯỜNG CAO ĐẲNG CÔNG NGHỆ THÔNG TIN


HỮU NGHỊ VIỆT - HÀN
KHOA CƠNG NGHỆ THƠNG TIN


TĨM TẮT ĐỒ ÁN TỐT NGHIỆP
NGÀNH: CÔNG NGHỆ THÔNG TIN

Đề tài:
XÂY DỰNG VÀ PHÁT TRIỂN ỨNG DỤNG
WEBSITE TIN TỨC CÔNG NGHỆ DỰA TRÊN
PHP FRAMEWORK LARAVEL

SVTH

: Nguyễn Minh Trƣởng

Lớp

: CCCT15A

Niên khóa : 2015 - 2018
CBHD

: TS. Hồ Văn Phi

Đà Nẵng, tháng 06 năm 2018


1
PHẦN MỞ ĐẦU

1.

Lý do chọn đề tài
Với mong muốn đóng góp một phần cơng sức của mình cho

việc xây dụng hệ thống website giới thiệu về trường nói chung và
khoa cơng nghệ thơng tin nói riêng và đặc biệt sau khi học được
nhiều kiến thức tại trường nên em quyết định chọn đề tài “Xây dựng
và phát triển ứng dụng website tin tức công nghệ dựa trên PHP
Framework Laravel” mong muốn cho các bạn sinh viên của khoa
biết về các thông tin về khoa và cũng như đường lối phát triển mơ
hình đào tạo của khoa đặc biệt là các thế mạnh của khoa được công
nhận.
2.

Mục tiêu và nhiệm vụ nghiên cứu.


Mục tiêu

Tìm hiểu cơng cụ xây dựng website Laravel và ứng dụng để
xây dựng website đáp ứng các yêu cầu cơ bản như sau: Hiện thị các
tin tức mới nhất lên trang chủ mang đến người dùng những tin tức
nóng hổi. Về phía lập trình viên giúp tối ưu hóa code và việc quản lý
code dễ dàng.


Nhiệm vụ

- Nghiên cứu Framework Laravel và mơ hình MVC trong

framework.
- Phân tích thiết kế hệ thống để đưa cơ sơ dữ liệu và các chức
năng cho cho website.
- Xây dựng website, đánh giá thực nghiệm.
- Khảo sát người dùng và đưa ra yêu cầu người dùng về tin
tức, thiết kế giao diện ưa nhìn, hiện thị thơng tin mới nhất cho người
dùng. Tìm hiểu thêm về Framework Laravel. Phân tích và xây dựng
website.


2
3.

Đối tƣợng và phạm vi nghiên cứu.


Đối tƣợng nghiên cứu

-Nghiên cứu website công nghệ TECHNEWS.TK
-Nghiên cứu Framework Laravel
-Nghiên cứu phương thức sluggable để tối ưu hóa đường dẫn


Phạm vi nghiên cứu

- Website công nghệ TECHNEWS.TK
- Framework Laravel
4.

Phƣơng pháp nghiên cứu

- Tìm hiểu lý thuyết
- Lấy ý kiến chuyên gia (giáo viên hướng dẫn và các thầy cô,

bạn bè, chuyên gia)
- Khảo sát các website tin tức về cơng nghệ.
- Tìm hiểu và nghiên cứu nhu cầu của người dùng.
5.

Ý nghĩa khoa học và thực tiễn
Kết quả nghiên cứu của đề tài sẽ là chứng cứ cho các nghiên

cứu lý thuyết về Laravel và các công cụ xây dựng website. Kết quả
của đồ án này sẽ là một trong những ví dụ thực tế giúp người dùng
đọc tin tức công nghệ một cách đơn giản nhất, đọc được những tin
tức công nghệ mới nhất, một cách nhanh chóng nhất
Ngồi những nội dung như Phần mở đầu, Kết luận, Tài liệu
tham khảo, Phụ lục thì đồ án được chia làm 4 chương với nội dung
như sau:
Chương 1: Cơ sở lý thuyết
Chương 2: Phân tích thiết kế hệ thống
Chương 3: Xây dựng ứng dụng
Chương 4: Triển khai xây dựng quản trị cho website tin tức.


3
CHƢƠNG I. CƠ SỞ LÝ THUYẾT
1.1.

GIỚI THIỆU VỀ LARAVEL PHP FRAMEWORK
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.
1.2.

ƢU ĐIỂM CỦA LARAVEL PHP FRAMEWORK ĐỐI

VỚI PHÁT TRIỂN WEBSITE
1.3.

CẤU TRÚC THƢ MỤC VÀ LUỒNG XỬ LÝ TRONG

LARAVEL
1.4.

THÀNH PHẦN CƠ BẢN TRONG LARAVEL

1.4.1.

Route trong Laravel

1.4.2.

Laravel Model

Hình 1.1. Mơ hình tương tác Model và cơ sở dữ liệu

1.4.3.

Laravel Controller

1.4.4.

Laravel View (Master Template)


4



Laravel View

Hình 1.2. Liên kết Route, Controller và View trong Laravel

Hình 1.3. Hoạt động của Master Template trong Laravel
1.5.

SỬ DỤNG CÁC THƢ VIỆN DÀNH CHO THIẾT KẾ

GIAO DIỆN WEBSITE VỚI LARAVEL
1.5.1.

Sử dụng Boostrap CSS Framework

1.5.2.

Sử dụng Jquery Javascript Framework


1.5.3.

Sử dụng kỹ thuật Jquery Ajax


5
CHƢƠNG II. PHÂN TÍCH THIẾT KẾ HỆ THỐNG
2.1.

KHẢO SÁT YÊU CẦU CỦA WEBSITE
Bước khảo sát yêu cầu sẽ làm rõ được một số vấn đề sau:



Mục đích xây dựng ứng dụng: Mục đích sử dụng của dự án

này là trình bày bài viết trên website dưới dạng tin tức, cho phép
người dùng truy cập và tra cứu tin tức trên trình duyệt web.



Đối tượng sử dụng: Người dùng bình thường (độc giả),

quản trị viên website (gồm quản trị viên đăng bài và quản trị viên
toàn bộ hệ thống).



Yêu cầu về chức năng: Đối với một website, yêu cầu tối


thiểu sẽ phải đạt được là:

o
o
o

Hiển thị nội dung theo từng loại tin.
Cho phép truy cập và đọc thông báo, tin tức, bài viết.
Cho phép liệt kê danh sách thông báo, tin tức, bài viếttheo

từng chun mục.

o
o
o

Cho phép tìm kiếm thơng báo, tin tức, bài viết..
Cho phép bình luận ở cuối tin tức.
Các chức năng cao hơn cho tác giả như đăng tin, sửa tin,

xoá tin, tải lên các dữ liệu đa phương tiện như ảnh, phim, …

o

Các chức năng cho quản trị viên hệ thống như thêm, sửa,

xoá tài khoản, thêm chuyên mục, thêm tệp tin, thông báo, tin tức, bài
viết nổi bật



o

Yêu cầu về thiết kế (yêu cầu phi chức năng):
Trình bày nội dung thơng báo, tin tức, bài viết, có tiêu đề,

ngày tháng đăng bài.

o

Trang chủ liệt kê danh sách cách thông báo, tin tức, bài viết

phân chia theo từng danh mục, các bài viết nổi bật.


6

o

Phần đầu trang web có logo của trang web, phần menu hiển

thị các danh mục thông báo, tin tức, bài viết cho người dùng lựa
chọn.

o

Phần cuối trang web có thơng tin chung về trang web, đơn

vị vận hành, quản lý, và một số các thông tin khác.
Sau khi đã làm rõ được các yêu cầu đối với ứng dụng, bước

tiếp theo sẽ là thiết kế hệ thống theo những yêu cầu đã nêu ở trên.
2.2.

PHÂN TÍCH YÊU CẦU VÀ THIẾT KẾ HỆ THỐNG

CHỨC NĂNG WEBSITE
2.1.1.

Các đối tƣợng sử dụng website
Như đã khảo sát, các đối tượng sử dụng của website bao gồm

người dùng (độc giả) và quản trị viên website. Hai đối tượng này, về
mặt chung đều là người sử dụng website, nhưng mục đích sử dụng của
mỗi đối tượng lại khác nhau. Người dùng bình thường chỉ có quyền
đọc bài viết, có thể bình luận về bài viết, quản trị viên sẽ có tất cả các
quyền của người dùng bình thường, ngồi ra sẽ có quyền cao hơn là
quản lý bài viết (đăng bài, sửa bài, xoá bài viết, tải lên các dữ liệu đa
phương tiện).
2.1.2.

Các trƣờng hợp sử dụng (Use Case)
Các trường hợp sử dụng của người dùng sẽ được biểu thị

thông qua các sơ đồ use case.


7

Hình 2.1. Sơ đồ Use Case của người dùng thơng thường


Hình 2.2. Sơ đồ Use Case của quản trị viên đăng bài (Author)


8

Hình 2.3. Sơ đồ Use Case của quản trị viên hệ thống
2.3.

MƠ HÌNH HĨA TƢƠNG TÁC

2.3.1. Biểu đồ trình tự
2.3.1.1.

Biểu đồ trình tự đăng nhập

Hình 2.4. Biểu đồ trình tự đăng nhập
2.3.2. Biểu đồ cộng tác


9
2.3.2.1.

Biểu đồ cộng tác đăng nhập

Hình 2.5. Biểu đồ cộng tác đăng nhập
2.3.2.2.

Biểu đồ cộng tác cập nhập ảnh

Hình 2.6. Biểu đồ cơng tác cập nhập ảnh

2.4.

MƠ HÌNH HĨA HÀNH VI

2.4.1. Biểu đồ trạng thái
2.4.1.1.

Biểu đồ trạng thái đăng nhập


10

Hình 2.7. Biểu đồ trạng thái cập nhập
2.4.2. Biểu đồ hoạt động
2.4.2.1.

Biểu đồ hoạt động đăng nhập

Hình 2.8. Biểu đồ hoạt động đăng nhập


11
2.5.

THIẾT KẾ CƠ SỞ DỮ LIỆU

Hình 2.4. Sơ đồ quan hệ của cơ sở dữ liệu


12

CHƢƠNG III. XÂY DỰNG ỨNG DỤNG
3.1.

TRIỂN KHAI LÕI VÀ CẤU HÌNH HỆ THỐNG SỬ

DỤNG LARAVEL FRAMEWORK
Để bắt đầu với dự án xây dựng website tin tức với Laravel, cần
cài đặt lõi của Framework này (xem phần phụ lục). Sau khi cài đặt
xong, bước tiếp theo là cấu hình hệ thống của Framework để phù hợp
với mơi trường lập trình. Để cụ thể hơn, mơi trường lập trình được sử
dụng trong tài liệu này là máy chủ web ảo sử dụng XAMPP phiên bản
7.0.8.
3.1.1.

Cấu hình chung cho hệ thống ứng dụng

3.1.2.

Cấu hình cơ sở dữ liệu

3.2.

MƠ TẢ CÁC CHỨC NĂNG
 Trang chủ: Là cổng thơng tin chính của website, các tin

mới của từng chuyên mục sẽ được bố trí phù hợp giúp người dùng dễ
dàng vào được chuyên mục cần xem. Các tin nỗi bật bồ trí khu vục
đầu trang với hiệu ứng đẹp mắt.
 Giới thiệu: Đăng tải các bài viết và hình ảnh về lịch sử
hình thành và phát triển của khoa, tầm nhìn, sứ mạng, giới thiệu các

bộ môn, cơ sở vật chất của khoa.
 Đội ngũ cán bộ: Đăng tải sơ đồ các cán bộ trong khoa và
danh sách thông tin chi tiết về các cán bộ trong khoa.
 Đào tạo: Đăng tải mơ hình đào tạo của khoa với các
chương trình đào tạo chính quy và đào tạo nghề, cuối cùng là tuyển
sinh đăng tải các thông tin tuyển sinh về các bộ môn giảng dạy của
khoa.
 Hợp tác nghiên cứu: Đăng tải các hướng phát triển nghiên
cứu của khoa và các danh sách cơng trình nghiên cứu của sinh viên


13
và cán bộ trong khoa phục vụ sinh viên trong quá trình học tập.
 Cơ hội việc làm: Đăng tải các thông tin tuyển dụng của
các công ty một cách chi tiết và danh sách các cơng ty có cựu sinh
viên đang làm việc giúp sinh viên có cơ hội việc làm sau khi ra
trường.
 Đăng nhập: Giúp sinh viên và khoa có sự tương tác với
nhau thơng qua chức năng bình luận.
3.3.

XÂY DỰNG TRANG CHỦ
Sau khi cấu hình xong, ứng dụng đã có thể khởi chạy hồn

tồn, nhưng nó chỉ có một trang web duy nhất, mặc định của Laravel,
cần phải xây dựng các trang web để thay đổi nó. Đầu tiên là trang
chủ của website tin tức.

Hình 3.1. Giao diện trang chủ
3.4.


XÂY DỰNG TRANG PHÂN LOẠI THEO CHỦ ĐỀ BÀI

VIẾT
Trang phân loại theo chủ đề bài viết có chức năng hiển thị các
bài viết theo danh mục mà người dùng đã chọn.
3.5.

XÂY DỰNG TRANG CHI TIẾT BÀI ĐĂNG TIN TỨC
Trang chi tiết bài đăng tin tức có chức năng hiển thị ra nội


14
dung của bài viết.

Hình 3.2. Chi tiết bài viết
3.6.

XÂY DỰNG CHỨC NĂNG TÌM KIẾM BÀI VIẾT
Trong một website bất kỳ, chức năng tìm kiếm nội dung là

khơng thể thiếu, website càng chứa nhiều thơng tin, chức năng tìm
kiếm càng cần thiết. Trong dự án này, chức năng tìm kiếm được xây
dựng để tìm kiếm theo tiêu đề bài viết.

Hình 3.3. Tìm kiếm bài viết
3.7.

XÂY ROUTE QUẢN TRỊ VÀ LAYOUT DÙNG CHUNG



15
3.7.1.

Tạo nhóm route cho admin

3.7.2.

Tạo layout dùng chung cho trang quản trị và tổ chức

thƣ mục
Truy cập theo đường dẫn resource/view tạo một thứ mục mới
admin. Tại đây sẽ lưu tất cả tệp view của trang quản trị
3.8.

XÂY DỰNG ĐĂNG NHẬP VÀ ĐĂNG XUẤT
Để xác thực người dùng truy cập vào trang quản trị với đường

dẫn /admin thì bắt buộc phải xây dựng một trang đăng nhập và nếu
qua được bước xác thực này thì mới cho vào trong trang quản trị.
Giao diện trang đăng nhập như sau:

Hình 3.5. Giao diện trang đăng nhập cho quản trị
3.9.

XÂY DỰNG TRANG CHỦ QUẢN TRỊ

3.10. XÂY DỰNG TRANG CÁ NHÂN



16

Hình 3.6. Giao diện thơng tin tài khoản
3.11. XÂY DỰNG TRANG QUẢN LÝ BÀI VIẾT
3.11.1.

Trang hiển thị danh sách bài viết

Hình 3.7. Giao diện danh sách bài viết


17
3.11.2.

Trang thêm bài viết

Hình 3.8. Giao diện trang đăng bài viết
3.11.3.

Trang sửa bài viết

Route thực hiện việc sửa bài viết Route::get('update/{id}',
'PostController@getUpdate'). {id} ở đây chính là một biên tương
ứng với id bài viết sẽ sửa. Chi tiết hàm getUpdate() xem thêm trong
mã nguồn.

Hình 3.9. Giao diện trang sửa bài viết


18

Route::post('update/{id}',
'PostController@postUpdate');
Hàm postUpdate sẽ thực hiện việc kiểm tra dữ liệu mà form
này gửi lên và lưu thay đổi vào database.
3.11.4.

Trang xóa bài viết

Route của trang xố bài viết:
Route::get('delete/{id}',
'PostController@getDelete')


19
KẾT LUẬN
Qua đồ án này em đã tìm hiểu được framework laravel cách
thức học động mơ hình MVC trong framework. Và áp dựng kiến
thức trên em đã xây dựng được website giới thiệu khoa công nghệ
thông tin. Website cũng đã đáp ứng được những yêu cầu của đặt tả.
Những còn một số chức năng chưa phát huy được hết công dụng của
mình ví dụ như: Các cơng trình nghiên cứu chưa kết nối được cơ sở
dữ liêu để thay đổi dễ dàng hơn...
Sau một thời gian bắt tay vào làm việc với sự giúp đỡ của
Thầy giao hướng dẫn đã hoàn thành đề tài “Xây dựng và phát triển
ứng dụng website tin tức công nghệ dựa trên PHP Framework
Laravel ”. Tuy nhiên trong q trình phân tích, thiết kế và xây dựng
hệ thống do thời gian có hạn và kinh nghiệm của bản thân còn hạn
chế nên chắc chắn trong báo cáo này khơng tránh khỏi những thiếu
sót và những chỗ xử lý vấn đề chưa tối ưu. Em rất mong nhận được
những nhận xét, đánh giá từ phía các thầy cơ đẽ em khắc phục và

hồn thiện hơn cho hệ thống website vận hành sau này.
Hướng phát triển của em sau này em muốn hoàn thiện hơn về
các chức năng như: hiển thị file đính kèm và bổ xung các chức năng
khác cho website trở nên hoàn thiện hơn.Sau một thời gian bắt tay
vào làm việc với sự giúp đỡ của Thầy giáo hướng dẫn đã hoàn thành
đề tài “Xây dựng và phát triển ứng dụng website tin tức công nghệ
dựa trên PHP Framework Laravel”. Tuy nhiên trong quá trình phân
tích, thiết kế và xây dựng hệ thống do thời gian có hạn và kinh
nghiệm của bản thân cịn hạn chế nên chắc chắn trong báo cáo này
không tránh khỏi những thiếu sót và những chỗ xử lý vấn đề chưa tối
ưu. Em rất mong nhận được những nhận xét, đánh giá từ phía các
thầy cơ để em khắc phục và hoàn thiện hơn cho hệ thống website vận
hành sau này.





×