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

Hệ thống quản lý đồ án tốt nghiệp tại trường đại học Souphanouvong Lào

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.6 MB, 71 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
-------------------------------

SEUANGKINKEO Lixoon

HỆ THỐNG QUẢN LÝ ĐỒ ÁN TỐT NGHIỆP TẠI TRƯỜNG ĐẠI
HỌC SOUPHANOUVOUNG, LÀ O

LUẬN VĂN THẠC SỸ KỸ THUẬT
CHUYÊN NGÀNH: CÔNG GNHỆ THÔNG TIN

Hà Nội – 2017


BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
-------------------------------

SEUANGKINKEO Lixoon

HỆ THỐNG QUẢN LÝ ĐỒ ÁN TỐT NGHIỆP TẠI TRƯỜNG ĐẠI
HỌC SOUPHANOUVOUNG, LÀ O

CHUYÊN NGÀNH: CÔNG NGHỆ THÔNG TIN
LUẬN VĂN THẠC SỸ KỸ THUẬT

NGƯỜI HƯỚNG DẪN KHOA HỌC: TS. NGUYỄN THI ̣THU TRANG

Hà Nội – 2017



Luâ ̣n văn cao ho ̣c

MỤC LỤC
MỤC LỤC .......................................................................................................................1
DANH MỤC HÌNH ẢNH ...............................................................................................3
DANH MỤC BẢNG .......................................................................................................5
DANH MỤC VIẾT TẮT .................................................................................................6
PHẦN MỞ ĐẦU .............................................................................................................8
1. Tính cấp thiết của đề tài ........................................................................................8
2. Mục tiêu của đề tài ................................................................................................8
3. Nội dung nghiên cứu .............................................................................................9
Abstract master's thesis ..................................................................................................10
1. Motivation of the Project:....................................................................................10
2. The importance of the subject: ............................................................................10
3. The purpose of the thesis research, Subjects, Research scope: ...........................10
4. The size of the subject: ........................................................................................10
5. Result: ..................................................................................................................10
6. The ability of the system: ....................................................................................10
7. The main content of the subject, the issues to be resolved: ................................11
PHẦN 1: ĐẶT VẤN ĐỀ VÀ ĐỊNH HƯỚNG GIẢI PHÁP .........................................12
1.1. Đặt vấn đề ............................................................................................................12
1.2. Định hướng giải quyết .........................................................................................12
PHẦN 2: CÁC NỀN TẢNG CÔNG NGHỆ .................................................................13
2.1. Cơ sở kiế n thức về Web .....................................................................................13
2.1.1. Đinh
̣ nghiã Web ........................................................................................13
2.1.2. Ứng du ̣ng của Web ....................................................................................13
2.1.3. Ưu điể m của Web ......................................................................................14
2.1.4. Nhựơc điể m của Web ................................................................................14

2.1.5. Vai trò quan trọng của Web. .....................................................................15
2.1.6. Sự khác biệt giữa Web và Phầ n mề m khác trên windows. .......................16
2.2. Mô hiǹ h Client – Server ......................................................................................16
2.2.1. Mơ hình Web client/server: .......................................................................17
2.3. Ngơn ngữ lập trình PHP ......................................................................................18
2.3.1. Giới thiệu về PHP .....................................................................................18
2.3.2. Cách làm việc của PHP ......................................................................................21
SEUANGKINKEO

LIXOON

Lớp: 15B CNTT2 – Khoá 2015B

1


Luâ ̣n văn cao ho ̣c

2.3.3. Ưu điểm của PHP ...............................................................................................21
2.3.4. Các tuỳ chọn của PHP ........................................................................................22
2.4. Hệ quản trị cơ sở dữ liệu MySQL .......................................................................23
2.4.1. Định nghĩa cơ sở dữ liệu ...........................................................................24
2.4.2. My SQL là gì ? ..........................................................................................24
2.5. Phầ n mề m appserv-win32-2.5.10(Apache Php Mysql) ......................................28
2.5.1. Giới thiệu về Appserv ...............................................................................28
2.5.2.Appserv có bảo mâ ̣t dữ liê ̣u rấ t an toàn.............................................................29
PHẦN3: PHÂN TÍCH VÀ PHÁT TRIỂN HỆ THỚNG ..............................................31
3.1. Mục tiêu của hệ thống .........................................................................................31
3.2. Yêu cầu hệ thống .................................................................................................32
3.3. Thiết kế chức năng hệ thống ...............................................................................33

3.3.1. Người dùng trong hệ thống .......................................................................33
3.3.2. Biểu đồ Use case .......................................................................................34
3.3.3. Các bảng Cơ sở dữ liệu trong hệ thống .....................................................44
PHẦN 4: GIẢI PHÁP VÀ THỬ NGHIỆM HỆ THỐNG ............................................48
4.1. Giải pháp về công nghệ .......................................................................................48
4.1.1. Đồng bộ dữ liệu hiển thị với dữ liệu trên cơ sở dữ liệu ............................49
4.1.2. Lưu trữ hình ảnh trên dịch vụ lưu trữ ảnh Appserv ..................................49
4.1.3.Phân quyền người dùng.....................................................................................50
4.2. Thử nghiê ̣p hê ̣ thố ng ............................................................................................53
4.2.1. Trang vào website .....................................................................................53
4.2.2. Trang chủ của hê ̣ thố ng .............................................................................54
4.2.3.Để biế t về trường đa ̣i ho ̣c SouPhaNouVong .....................................................54
Trang Login để vào đế n các trang thêm, sưả, xoa, đổ i dữ liê ̣u của nhân
55
Dữ liê ̣u sinh viên ....................................................................................55
Dữ liê ̣u ngành ho ̣c ..................................................................................57
Dữ liê ̣u giáo trình ...................................................................................58
Dữ liê ̣u thầ y cô .......................................................................................59
Trang Login của sinh viên.........................................................................60
Các báo cáo ...............................................................................................61
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN TIẾP THEO................................................68
4.2.4.
viên
4.2.4.1.
4.2.4.2.
4.2.4.3.
4.2.4.4.
4.2.5.
4.2.6.


TÀI LIỆU THAM KHẢO .............................................................................................69

SEUANGKINKEO

LIXOON

Lớp: 15B CNTT2 – Khoá 2015B

2


L ̣n văn cao ho ̣c

DANH MỤC HÌNH ẢNH
Hình 2.1: Mơ hình Client server .............................................................................17
Hình 2.2: Cách làm việc của PHP ..........................................................................21
Hình 2.3: trang chủ của Appserv 2.5.10 .................................................................29
Hình 2.4: Bảo mâ ̣t của Appserv 2.5.10...................................................................29
Hình 2.5: Tìm kiế m dữ liê ̣u của Appserv 2.5.10 ....................................................30
Hình 3.1: Biểu đồ Use case tổng quan...................................................................34
Hình 3.2: Biều đồ hoạt động chức năng Assigned teacher ....................................40
Hình 3.3: Biều đồ hoạt động chức năng lich
41
̣ bảo vê..............................................
̣
Hình 3.4: Biểu đồ hoạt động chức năng nơ ̣p file đờ án .........................................42
Hình 3.5: Biểu đồ hoạt động chức năng Submit Project .......................................43
Hình 4.2: Thực hiện tải lại tự động nội dung theo thời gian ..................................49
Hình 4.3: Bảng cơ sở dữ liệu người dùng...............................................................50
Hình 4.4: Chức năng vào hê ̣ thố ng của sinh viên ...................................................50

Hình 4.5: Chức năng vào hê ̣ thố ng của thầ y cô hướng dẫn ....................................51
Hin
̀ h 4.6: Chức năng vào hê ̣ thố ng của nhân viên ..................................................52
Hin
̀ h 4.7: Trang vào hê ̣ thố ng .................................................................................53
Hin
̀ h 4.8 : Trang Index của hê ̣ thố ng ......................................................................54
Hin
̀ h 4.9: Về trường đa ̣i ho ̣c SouPhaNouVong ......................................................54
Hình 4.10: Trang login của nhân viên ....................................................................55
Hình 4.11: Trang dữ liê ̣u sinh viên .........................................................................55
Hình 4.12: Trang thêm dữ liê ̣u hồ sơ sinh viên ......................................................56
Hin
̀ h 4.13: Trang chin̉ h sửa dữ liê ̣u hồ sơ sinh viên ...............................................56
Hin
̀ h 4.14: Trang xoá dữ liê ̣u hồ sơ sinh viên ........................................................57
Hin
̀ h 4.15: Trang dữ liê ̣u ngành ho ̣c .......................................................................57
Hin
̀ h 4.16: Trang thêm ngành ho ̣c ..........................................................................57
Hình 4.17: Trang sủa đổ i dữ liê ̣u ngành ho ̣c ..........................................................58
Hình 4.18: Trang dữ liê ̣u giáo trình ........................................................................58
Hình 4.19: Trang thêm dữ liê ̣u giáo trình ...............................................................58
Hin
̀ h 4.20: Trang sửa đổ i dữ liê ̣u giáo trin
̀ h ...........................................................59
Hin
̀ h 4.21: Trang dữ liê ̣u thầ y cô ............................................................................59
Hin
̀ h 4.22: Trang thêm dữ liê ̣u thầ y cô ..................................................................59

Hin
̀ h 4.23: Tranh sửa đổ i dữ liê ̣u thầ y cô ...............................................................60
Hình 4.24: Trang riêng của sinh viên .....................................................................60
SEUANGKINKEO

LIXOON

Lớp: 15B CNTT2 – Khoá 2015B

3


Luâ ̣n văn cao ho ̣c

Hin
̀ h 4.25: Danh sách sinh viên đã đăng kí bảo vê ̣.................................................61
Hin
̀ h 4.26: Danh sách sinh viên chủan bi ̣bảo vê ̣....................................................61
Hin
̀ h 4.27: Danh sách sinh viên đã bảo vê ̣ ...........................................................61
Hình 4.28: Danh sách sinh viên đã bảo vê ̣ ...........................................................62
Hình 4.29: Danh sách sinh viên bảo vê ̣ theo giáo trình ..........................................62
Hin
̀ h 4.30: Danh sách sinh viên bảo vê ̣ theo khoa..................................................62
Hin
̣ bảo vê ̣...........................................................................................63
̀ h 4.31: Lich
Hin
̀ h 4.32: Tổ ng số file đồ án .................................................................................63
Hin

̀ h 4.33: Trang upload file đồ án của sinh viên ..................................................64
Hin
̀ h 4.34: Trang danh sách đề tài của sinh viên ...................................................64
Hình 4.35: Trang download file đồ án ....................................................................65
Hin
̀ h 4.36: Trang tìm kiế m đề tài ...........................................................................65
Hin
̀ h 4.37: Trang download đề tài ..........................................................................66
Hin
̀ h 4.38: Trang tìm kiế m file đồ án .....................................................................66
Hin
̀ h 4.39: Trang change password của sinh viên ..................................................67

SEUANGKINKEO

LIXOON

Lớp: 15B CNTT2 – Khoá 2015B

4


Luâ ̣n văn cao ho ̣c

DANH MỤC BẢNG
Bảng 2.1: Dữ liệu kiểu chấm động .........................................................................26
Bảng 2.2: Loa ̣i dữ liệu Dat and Time .....................................................................27
Bảng 2.2 : Phân tích hướng đối tượng ....................................................................28
Bảng 3.1: Danh sách người dùng trong hệ thống ...................................................34
Bảng 3.2: Danh sách Usecase chi tiết của hệ thống ...............................................35

Bảng 3.3: Mô tả usecase Login ..............................................................................35
Bảng 3.4: Mô tả Usecase Logout ............................................................................35
Bảng 3.5: Mô tả Usecase đổ i mã ............................................................................36
Bảng 3.6: Mô tả Usecase báo cáo ...........................................................................36
Bảng 3.7: Mô tả Usecase câ ̣p nhâ ̣n dữ liê ̣u.............................................................36
Bảng 3.8: Mô tả Usecase download dữ liê ̣u ...........................................................36
Bảng 3.9: Mô tả Usecase dữ liê ̣u giáo triǹ h……………….………………………...36
Bảng 3.10: Mô tả Usecase dữ liê ̣u ngành ...............................................................37
Bảng 3.11: Mô tả Usecase dữ liê ̣u lich
̣ bảo vê ̣ .......................................................37
Bảng 3.13: Mô tả Usecase dữ liê ̣u file đồ án, upload file đồ án .............................38
Bảng 3.14: Mô tả Usecase dữ liê ̣u đề tài,Upload đề tài..........................................38
Bảng 3.15: Mô tả Usecase dữ liê ̣u teacher .............................................................39
Bảng 3.16: Mô tả Usecase Dữ liê ̣u student ............................................................39
Bảng 3.17: Mô tả Usecase Create Deadline ...........................................................39
Bảng 3.18:Dữ liê ̣u sinh viên ...................................................................................45
Bảng 3.19: Dữ liê ̣u thầ y cô hướng dẫn ..................................................................46
Bảng 3.20: Dữ liê ̣u ngành .......................................................................................46
Bảng 3.21: Dữ liê ̣u giáo trình .................................................................................46
Bảng 3.22: Dữ liê ̣u đăng kí đăng kí bảo vê ̣...........................................................46
Bảng 3.23: Dữ liê ̣u đề tài đồ án .............................................................................47
Bảng 3.24: Dữ liê ̣u nô ̣p file đồ án..........................................................................47

SEUANGKINKEO

LIXOON

Lớp: 15B CNTT2 – Khoá 2015B

5



Luâ ̣n văn cao ho ̣c

DANH MỤC VIẾT TẮT
HTML

Hyper text Markup Language

SQL

Structured Query Language

PHP

Hyper text Preprocessor

CSS

Cascading Style Sheets

Appserv

Apche + Php + MySQL

HTTP

Hyper Text Transfer Protocol

WMN


Wireless MeshNetwork

CNTT

Công Nghệ ThôngTin

Dep

Department

Curri

Curriculums

FAFR

Faculty of Agriculture and Forest Resources

FE

Faculty of Education

FL

Faculty of Languages

FET

Faculty of Economics and Tourism


FA

Faculty of Architecture

FOE

Faculty of Engineering

LL101

Lao Language – Literature

EV101

Environment

MA111

Mathematics

CP101

Computer

PE101

Physical Education

CPE218


Introduction to Computer

CH111

Chemisty

CPE311

Digital Sinal Processing

EL111

English I

CPE221

Discrete Structure

LS101

Lao study I

CPE211

English for Computer I

EEE226

Fundamental Electricity Engineering


DL

Dữ liê ̣u

SEUANGKINKEO

LIXOON

Lớp: 15B CNTT2 – Khoá 2015B

6


Luâ ̣n văn cao ho ̣c

CPE231

Fundamental Computer Programing

EEE222

Fundamental Electricity Design

CPE322

Operating System

CPE333


Computer Programing 2 (Java)

SV

Sinh viên

ER

Entity Relationship Model

DFD

Data Flow Diagram

DEP

Department

TC
TKHP

Tiń chỉ
Tổ ng kế t ho ̣c phầ n

SAP

Single Page Application

CRUD


Create, Read, Update, Delete

HTTP

HyperText Tranfer Protocol

SEUANGKINKEO

LIXOON

Lớp: 15B CNTT2 – Khoá 2015B

7


Luâ ̣n văn cao ho ̣c

PHẦN MỞ ĐẦU
Đề tài : “Hệ thống quản lý Đồ án tốt nghiệp ta ̣i Trường Đa ̣i ho ̣c
SOUPHANOUVOUNG, LÀ O”.
Tác giả luận văn: SEUANGKINKEO Lixoon

Khóa: 2015B

1. Tính cấp thiết của đề tài
Hiện nay, với sự phát triển mạnh mẽ của Công nghệ thông tin nói chung, và
lĩnh vực Internet nói riêng, việc số hoá lưu trữ là một hướng đi tất yếu, và đem lại rất
nhiều lợi ích to lớn. Tuy nhiên ở Lào, còn rất nhiều lĩnh vực chưa được chú trọng phát
triển theo xu thế thời đại này, trong đó có giáo dục ở bậc Đại học, cụ thể là việc quản
lý các kết quả, cơng trình nghiên cứu của rất nhiều các thế hệ sinh viên.

Hàng năm trên cả nước, có hàng chục ngàn cử nhân/kỹ sư, hàng ngàn thạc sỹ và
hàng trăm tiến sỹ tốt nghiệp, trong đó tính riêng đa ̣i ho ̣c SOUPANOUVONG đã có
hàng ngàn kỹ sư, hàng trăm thạc sỹ, hàng chục tiến sỹ. Có thể nói rất nhiều tinh hoa,
kiến thức đã được đúc kết và trình bày trong các luận văn tốt nghiệp, tuy nhiên việc
quản lý và sử dụng các nguồn kiến thức q báu đó đã khơng được tận dụng một cách
hiệu quả. Một trong những phương pháp truyền thống vẫn sử dụng, đó là lưu trữ bản
cứng (quyển, đĩa CD, …) ở các thư viện. Điều đó đem lại rất nhiều những điểm bất lợi
như sau:
- Công sức bỏ ra để thu thập, bảo quản các bản cứng đó là rất nhiều, do phụ
thuộc rất nhiều vào con người, cơ sở vật chất, thời gian, … Và theo thời gian,
rất nhiều những tài liệu đã bị hỏng hóc, khơng thể sử dụng được nữa.
- Rất khó để có thể tổ chức lưu trữ, quản lý tốt nhất là vấn đề đồng bộ hoá giữa
các đơn vị khác nhau (như giữa các khoa trong 1 trường hay giữa các trường
với nhau).
- Việc tìm kiếm, tra cứu rất khó khăn, và hồn tồn phụ thuộc vào vị trí địa lý,
dẫn đến những kiến thức hữu ích rất khó đến được với một cộng đồng lớn
người dùng.
Vì tất cả những lí do trên, chúng tôi nhận thấy việc xây dựng một hệ thống quản
lý, lưu trữ và hỗ trợ tìm kiếm hiệu quả các đờ án là một việc hồn tồn cần thiết
và thiết thực.

2. Mục tiêu của đề tài
Mục tiêu của đề tài là xây dựng hệ thống quản lý đồ án tố t nghiê ̣p tại trường đại
học SOUPANOUVONG, LAOS trên nền tảng Web.
Hệ thống cần đạt được các mục tiêu sau:

SEUANGKINKEO

LIXOON


Lớp: 15B CNTT2 – Khoá 2015B

8


Luâ ̣n văn cao ho ̣c

- Hê ̣ thố ng hỗ trợ đăng kí và cập nhật, lưu trữ thông tin danh sách sinh viên bảo
vê ̣, danh sách sinh viên chuẩn bi ̣ bảo vê ̣, danh sách sinh viên đã bảo vê ̣, danh
sách đề tài đồ án, file đồ án, thầ y cô hướng dẫn, ngành ho ̣c, giáo trình, trong
Trường đa ̣i ho ̣c SOUPHANOUVONG.
- Cung cấp thơng tin chính xác và kịp thời.
- Hỗ trợ việc chứng nhâ ̣n đăng kí bảo vê ̣, đăng kí đề tài, upload file đồ án,
tham khảo đồ án, tìm kiế m đồ án cho sinh viên.
- Hỗ trợ tìm kiếm dữ liê ̣u và thống kê báo cáo.
Để đáp ứng được các mục tiêu trên hệ thống cần đáp ứng được các yêu cầu
sau:
- Có thể lưu trữ và cập nhật được dữ liê ̣u đồ án tố t nghiê ̣p: dữ liê ̣u đề tài đồ án,
dữ liê ̣u upload file đồ án, dữ liê ̣u thầ y cô hướng dẫn, dữ liê ̣u sinh viên làm đồ
án, dữ liê ̣u giáo triǹ h, dữ liê ̣u ngành.
- Có thể đăng kí và hiện thị dữ liê ̣u đồ án tố t nghiê ̣p dữ liê ̣u đề tài đồ án, dữ liê ̣u
upload file đồ án, dữ liê ̣u thầ y cô hướng dẫn, dữ liê ̣u sinh viên làm đồ án, dữ
liê ̣u giáo trình, dữ liê ̣u ngành.
- Có thể tổ ng hợp báo cáo đề tài đồ án, sinh viên chuẩ n bi ̣ bảo vê ̣, sinh viên đã
bảo vê ̣ xong, danh sách tên đề tài đồ án, tổ ng số file đồ án, file đồ án theo năm
ho ̣c, file đồ án theo ngành ho ̣c.
- Có thể tìm kiế m danh sách sinh viên đăng kí bảo vê ̣, đề tài đờ án, file đờ án.
- Có thể tìm kiếm được thông tin sinh viên làm đồ án, thầ y cô hướng dẫn.

3. Nội dung nghiên cứu

Nô ̣i dung chung của để tài đờ án này
- Tìm hiểu nghiệp vụ quản lý đồ án tốt nghiệp ở trường đại học
SOUPHANOUVONG.
- Tìm hiểu các cơng nghệ xây dựng hệ thống.
- Phân tích thiết kế hệ thống.
- Giải pháp, thử nghiê ̣m hệ thống.
Vì thế nội dụng luận văn gồm các phần sau:





Phầ n1: Đặt vấn đề và định hướng giải pháp
Phầ n2: Các nền tảng cơng nghệ
Phầ n3: Phân tích thiết kế hệ thống
Phầ n 4: Giải pháp và thử nghiêm
̣ hê ̣ thố ng

 Kế t luâ ̣n và hướng phát triể n

SEUANGKINKEO

LIXOON

Lớp: 15B CNTT2 – Khoá 2015B

9


Luâ ̣n văn cao ho ̣c


Abstract master's thesis
Project title: “Thesis Management System at SOUPANOUVONG
University, LAOS”.
Author: SEUNGKINKEO Lixoon

Course: 2015B

1. Motivation of the Project:
In the recent years, information technology background of Laos has also
developed in all fields in the real life as well as in the field of social management. One
of the fields in which computers are widely used is the information management
system in general. However, nowsaday due to the scalability and the complexity of the
work increasing, we should have a information management system that is not just a
simple programming simple but must be developped a systematic way.

2. The importance of the subject:
The old system of universities of SOUPANOUVONG University is stored by
writing on paper or books which is expensive in cost, and has many problems, slowly
and easy to lose data. So we can use Information Management System for more
effective data storage and look-up.

3. The purpose of the thesis research, Subjects, Research scope:
The purpose of this thesis is to build a system to manage projects of students at
SOUPHANOUVONG University. Currently the management of the projects is done
manually, hence it is quite difficult to lookup or query. The computerization to support
students and the school is essential.

4. The size of the subject:
This topic describes the management of thesis system, the data storage,

Students can access the web to see their upload/download data and seacrh for the
thesis in the online system.

5. Result:
- Know of design methods, the work of the management system in
SOUPHANOUVONG University.
- Have basic knowledge on Database with Appserv in Windows 7.
- Know the working procedures, planning and functioning of the system.

6. The ability of the system:
This system satisfies most of the requirements for a thesis management system
such as:

SEUANGKINKEO

LIXOON

Lớp: 15B CNTT2 – Khoá 2015B

10


Luâ ̣n văn cao ho ̣c

- Store data, edit profile data, thesis, books of thesis, students, branch,
curriculum, teachers.
-

Increase, loosened data of students whose registed thesis


-

Search thesis based on some given keywords.

-

Save, edit, update, delete, and print data.

7. The main content of the subject, the issues to be resolved:
General content of this thesis is the theory and practice related to the
development of an information management system for students and teachers of
SOUPHANOUVONG University.

SEUANGKINKEO

LIXOON

Lớp: 15B CNTT2 – Khoá 2015B

11


Luâ ̣n văn cao ho ̣c

PHẦN 1: ĐẶT VẤN ĐỀ VÀ ĐỊNH HƯỚNG GIẢI PHÁP
1.1. Đặt vấn đề
Hiện nay, lĩnh vực cơng nghệ thơng tin trên tồn thế giới nói riêng cũng như
trên nước Là o nói chung đã và đang phát triển ngày càng mạnh mẽ. Nó đi sâu vào mọi
lĩnh vực của đời sống, từ các ngành công nghiệp lớn đến các lĩnh vực văn hóa, giáo
dục, giải trí. Nó trở thành một phần khơng thể thiếu trong cuộc sống của con người,

giúp con người nâng cao tri thức và đời sống, giảm thiểu tối đa sức lao động đồng thời
giúp cho công việc đạt được hiệu quả hơn. Đặc biệt, sự bùng nổ của thiết bị di động
càng làm con người và công nghệ thông tin trở lên gắn kết với nhau hơn.
Với quy trình nghiệp vụ truyền thống trong việc quản lý đồ án tốt nghiệp của
trường Đại học SOUPANOUVONG, bao gồm các bước cơ bản sau:
 Xác nhận danh sách sinh viên đăng kí làm đồ án tốt nghiệp do Phòng đào tạo
gửi.
 Từ danh sách trên, phân công giáo viên hướng cho mỗi sinh viên đăng kí với
đề tài cụ thể.
 Trong q trình làm đồ án, cập nhật lại danh sách sinh viên đủ điều kiện làm
đồ án.
 Phân công hội đồng bảo vệ với quy tắc giảng viên hướng dẫn thì khơng được
là thành viên của hội đồng bảo vệ
 Phân công giáo viên phản biện cho từng đề tài.
 Sinh viên nộp quyển đồ án và mã nguồn kèm theo được ghi ra một đĩa nộp
cho bộ môn quản lý.
Với cách quản lý truyền thống trên, mọi công việc đều được làm bằng tay, hoặc
thao tác trên một file excel có sẵn. Do đó, giảng viên sẽ rất tốn thời gian vào việc quản
lý xuyên suốt trong cả học kì. Sinh viên nộp đồ án bằng một đĩa CD gặp nhiều vấn đề
trong việc lưu trữ, theo thời gian đĩa có thể bị hỏng, kém chất lượng.
Yêu cầu đặt ra cần xây dựng một hệ thống quản lý đồ án của sinh viên theo
từng khóa.

1.2. Định hướng giải quyết
Với bài tốn trên, qua tìm hiểu, phân tích, em đưa ra một vài vấn đề và định
hướng giải quyết chúng như sau: Hệ thống được áp dụng cho trường Đại học
SOUPANOUVONG, đối tượng sử dụng là cán bộ Quản lý, các thầy cô trong viê ̣n và
sinh viên làm đồ án. Do vậy, cần xây dựng một hệ thống client – server trong đó, mỗi
cấp quản lý của viê ̣n và các thầy cô, sinh viên là một client và tất cả dữ liệu về dữ liệu,
tài nguyên liên quan và thông tin tài khoản của mỗi người sẽ được lưu trữ và xử lý trên

server. Về cơng nghệ, sau khi tìm hiểu em lựa chọn công nghệ PHP và MySQL để xây
dựng hệ thống, với những ưu nhược điểm em phân tích ở phần chương tiếp theo.

SEUANGKINKEO

LIXOON

Lớp: 15B CNTT2 – Khoá 2015B

12


Luâ ̣n văn cao ho ̣c

PHẦN 2: CÁC NỀN TẢNG CÔNG NGHỆ
2.1. Cơ sở kiế n thức về Web
2.1.1. Đinh
̣ nghiã Web
Là một tập hợp các trang web con, bao gồm văn bản, hình ảnh, video, flash v.v..
WEBSITE chỉ nằm trong một tên miền hoặc tên miền phụ lưu trữ trên các máy chủ
chạy online trên đường truyền World Wide của Internet. Website được phát minh và
đưa vào sử dụng vào khoảng năm 1990, 1991 bởi viện sĩ Viện Hàn lâm Anh Tim
Berners-Lee và Robert Cailliau (Bỉ) tại CERN, Geneva, Switzerland.
Một trang web là tập tin HTML hoặc XHTML có thể truy nhập dùng giao thức
HTTP hoặc HTTPS. WEBSITE có thể được xây dựng từ các tệp tin HTML (trang
mạng tĩnh) hoặc vận hành bằng các CMS chạy trên máy chủ (trang mạng động).
WEBSITE có thể được xây dựng bằng nhiều ngơn ngữ lập trình khác nhau
(PHP,.NET, Java, Ruby on Rails...).
Hiện nay, để một website có thể vận hành trên mơi trường Word Wide, cần bắt
buộc có 3 phần chính:

 Tên miền (là tên riêng và duy nhất của website).
 Hosting (là các máy chủ chứa các tệp tin nguồn).
 Source code (là các tệp tin html, xhtml,.. hoặc một bộ code/cms)
Website được tương tác và hiển thị đến với người dùng thơng qua các phần
mềm gọi là "Trình duyệt web" với các văn bản, hình ảnh, đoạn phim, nhạc, trị chơi và
các thơng tin khác ở trên một trang web của một địa chỉ web trên mạng toàn cầu hoặc
mạng nội bộ. Website được tạo nên bởi các nhà thiết kế web (website developer).Ngày
nay, thuật ngữ website được sử dụng rất phổ thơng, người người, nhà nhà đều có thể
truy cập một website ở bất kì đâu có kết nối internet hoặc có kết nối sóng di động. Với
các doanh nghiệp, cá nhân thường xuyên tương tác với cộng đồng online thì website là
cơng cụ tốt nhất và duy nhất giúp họ quảng bá hình ảnh, sản phẩm, thơng tin,.. của
mình. Và từ đó các dịch vụ thiết kế web chuyên nghiệp ra đời nhằm đáp ứng điều đó
[4],[5],[8].

2.1.2. Ứng du ̣ng của Web
Là một trình ứng dụng mà có thể tiếp cận qua web thơng qua mạng như
Internet.
Ứng dụng web phổ biến nhờ vào sự có mặt vào bất cứ nơi đâu của một chương
trình. Khả năng cập nhật và bảo trì ứng dụng Web mà khơng phải phân phối và cài đặt
phần mềm trên hàng ngàn máy tính là lý do chính cho sự phổ biến của nó. Ứng dụng

SEUANGKINKEO

LIXOON

Lớp: 15B CNTT2 – Khoá 2015B

13



Luâ ̣n văn cao ho ̣c

web được dùng để hiện thực Webmail, bán hàng trực tuyến, đấu giá trực tuyến. Hệ
quản trị nội dung, Phần mềm quản lý nguồn nhân lực và nhiều chức năng khác.
 Web rấ t quan tro ̣ng vì chỉ nhấ n vào Browser là cha ̣y vào Internet ngay
không cầ n đă ̣t phầ n mề m, web có thể chia sẻ mô ̣t trang với nhiề u người có thể
Download Upload dữ liê ̣u của mình qua trang web.
 Có thể sử du ̣ng nhiề u người trong mô ̣t thời gian cùng mô ̣t trang Web của
server
 Có thể mua bán cho ̣n các sản phẩ m hàng hoá trên ma ̣ng và tiê ̣n nghi
 Có thể chia sẻ sản phẩ m hàng hoá của mình rô ̣ng raĩ
 Tìm dễ và nhanh chóng la ̣i còn tiế t kiể m thời gian
 Trong hê ̣ thố ng quản lý đồ án tố t nghiê ̣p thì Web là trang quản lý dữ liê ̣u
thông qua ma ̣ng đế n server có thể thêm, xoá,sửa, upload, download dữ liê ̣u như:
dữ liê ̣u danh sách sinh viên bảo vê ̣, danh sách sinh viên chuẩn bi ̣ bảo vê ̣, danh
sách sinh viên đã bảo vê ̣, danh sách đề tài đồ án, file đồ án, thầ y cô hướng dẫn,
ngành ho ̣c, giáo trình.

2.1.3. Ưu điể m của Web
 Chi phí nhận được đơn đặt hàng trên Web sẽ rẻ hơn so với hầu hết cách nhận
đơn đặt hàng khác, kể cả đặt tại cửa hàng, qua điện thoại, hay đến tận nhà.
 Chi phí xử lý và quản lý thấp hơn.
 Các đơn đặt hàng qua website thường ít sai sót hơn so với các đơn đặt hàng
qua điện thoại.
 Các khách hàng có thể dễ dàng so sánh các cửa hàng và có thể mua hàng
vào bất kỳ thời gian nào, dù là ban ngày hay ban đêm.
 Các khách hàng đôi khi cảm thấy thoải mái hơn trong việc đưa ra quyết định
mua hàng khi khơng có mặt của người bán hàng.
 Đối với việc kinh doanh giữa các doanh nghiệp với doanh nghiệp thì việc có
một trang Web để nhận đơn đặt hàng ngụ ý rằng doanh nghiệp đó có sử dụng

các cơng nghệ hiện đại.
 Đớ i với viê ̣c quản lý đồ án tố t nghiê ̣p các sinh viên làm đồ án đăng kí cho ̣n
đề tài, nô ̣p file đề tài bằ ng file, nhân viên và thầ y cô hướng dẫn có thể xem biế t
ngay ai là sinh viên mà mình hướng dẫn, sinh viên khác trong trường đa ̣i ho ̣c có
mã sẽ tham khảo đo ̣c và download đươ ̣c.

2.1.4. Nhựơc điể m của Web
Mặc dù có nhiều lý do hấp dẫn để kinh doanh trên Web như vậy, nhưng các
doanh nghiệp vẫn rất dè dặt. Một số vấn đề khiến các doanh nghiệp lo ngại gồm:
SEUANGKINKEO

LIXOON

Lớp: 15B CNTT2 – Khoá 2015B

14


Luâ ̣n văn cao ho ̣c

 Sự bảo mật trên internet không được bảo đảm, các khách hàng không thể
xác nhận được họ đang mua hàng của ai và các thơng tin tài chính có thể bị tiết
lộ.
 Các khách hàng lo lắng về nguy cơ có thể nhận được hàng kém chất lượng
và lo lắng về các chính sách trả hàng lại.
 Các hệ thống nhận tiền thanh toán rất khó sử dụng và các doanh nghiệp
khơng có đủ kiến thức về các phần mềm và các tiến trình liên quan.
 Thương mại điện tử đối với khách hàng vẫn chưa phải là một phần không
thể thiếu trong cuộc sống.
 Không thể cấ m đươ ̣c các sản phẩ m hàmg hóa và chấ t lươ ̣ng có giố ng như

quảng cáo trên ma ̣ng hay không.
 Phải có ma ̣ng, trả tiề n chi phí ma ̣ng và có các bô ̣c công cu ̣ sử du ̣ng Internet.
 Khơng có sự nhất qn trong các luật thuế, các vấn đề pháp lý và các hiệp
ước Quốc Tế.
 Với viê ̣c đồ án tố t nghiê ̣p phải có ma ̣ng có mã mà phòng đa ̣o ta ̣o cho và khi
sẽ nô ̣p quyể n phải đồ ng ý xem xét từ phản biê ̣n và phòng đa ̣o ta ̣o, khi đăng kí
cho ̣n thầ y cô thì phải go ̣i cho thầ y cô hướng dẫn có đồ ng ý không nế u đồ ng ý
phải có quyế t đinh.
Hầu hết những điểm bất lợi trong việc đồ án tố t nghiê ̣p trên Web bắt nguồn từ
nguyên nhân lĩnh vực thương mại điện tử cịn khá mới mẻ. Cũng như đối với các cơng
nghệ mới khác, nó cần thời gian để khơng chỉ phát triển cơng nghệ mà cịn phát triển
kinh nghiệm, chun mơn, và văn hố để sử dụng nó.

2.1.5. Vai trị quan trọng của Web.
Hiện nay, Web rất quan trọng bởi vì các Web được sử dụng có các nhiệm vụ
như:
 Tăng năng suất cho các tổ chức với chi phí thấp hơn, hoạt động sản xuất và
dịch vụ được hoàn thành một cách nhanh chóng.
 Nâng cao chất lượng hàng hóa và dịch vụ.
 Tạo một vai trò quan trọng trong việc cạnh tranh với các đối thủ.
 Tái cấu trúc tổ chức làm cho tổ chức có khả năng cải tiê ̣n đươ ̣c theo kế
hoa ̣ch.
 Giúp đô ̣ng thái các công việc của người quản lý có hiệu quả hơn.

SEUANGKINKEO

LIXOON

Lớp: 15B CNTT2 – Khoá 2015B


15


Luâ ̣n văn cao ho ̣c

2.1.6. Sự khác biệt giữa Web và Phầ n mề m khác trên windows.
 Web: Web sử du ̣ng các lâ ̣p trình của các ngôn ngữ để liên hê ̣ cơ sở dữ liê ̣u

trong Server qua Internet để tải lên và tải xuố ng thông tin có các máy tính là
Clients Server.
 Phầ n mề m trên máy tính: Các phầ n mề m làm viê ̣c trên máy tin
́ h có nhiê ̣m

vu ̣ trên Window thì sẽ đă ̣t các phầ n mề m trước và không thể Link trên ma ̣ng
đươ ̣c .

2.2. Mô hin
̀ h Client – Server
Là một mơ hình nổi tiếng trong mạng máy tính, được áp dụng rất rộng rãi và là
mơ hình của mọi trang web hiện có. Ý tưởng của mơ hình này là máy con (đóng vài
trị là máy khách) gửi một u cầu (request) để máy chủ (đóng vai trị người cung ứng
dịch vụ), máy chủ sẽ xử lý và trả kết quả về cho máy khách.
Client/Server là mơ hình tổng qt nhất, trên thực tế thì một server có thể được
nối tới nhiều server khác nhằm làm việc hiệu quả và nhanh hơn. Khi nhận được 1 yêu
cầu từ client, server này có thể gửi tiếp yêu cầu vừa nhận được cho server khác ví dụ
như database server vì bản thân nó khơng thể xử lý u cầu này được. Máy server có
thể thi hành các nhiệm vụ đơn giản hoặc phức tạp. Ví dụ như một máy chủ trả lời thời
gian hiện tại trong ngày, khi một máy client yêu cầu lấy thơng tin về thời gian nó sẽ
phải gửi một yêu cầu theo một tiêu chuẩn do server định ra, nếu yêu cầu được chấp
nhận thì máy server sẽ trả về thơng tin mà client u cầu. Có rất nhiều các dịch vụ

server trên mạng nhưng nó đều hoạt động theo nguyên lý là nhận các yêu cầu từ client
sau đó xử lý và trả kết quả cho client u cầu. Thơng thường chương trình server và
client được thi hành trên hai máy khác nhau. Cho dù lúc nào server cũng ở trạng thái
sẵn sàng chờ nhận yêu cầu từ client nhưng trên thực tế một tiến trình liên tác qua lại
(interaction) giữa client và server lại bắt đầu ở phía client, khi mà client gửi tín hiệu
yêu cầu tới server. Các chương trình server thường đều thi hành ở mức ứng dụng (tầng
ứng dụng của mạng). Sự thuận lợi của phương pháp này là nó có thể làm việc trên bất
cứ một mạng máy tính nào có hỗ trợ giao thức truyền thông chuẩn cụ thể ở đây là giao
thức TCP/IP. Với các giao thức chuẩn này cũng giúp cho các nhà sản xuất có thể tích
hợp nhiều sản phẩm khác nhau của họ lên mạng mà không gặp phải khó khăn gì. Với
các chuẩn này thì các chương trình server cho một dịch vụ nào đấy có thể thi hành trên
một hệ thống chia sẻ thời gian (timesharing system) với nhiều chương trình và dịch vụ
khác hoặc nó có thể chạy trên chính một máy tính các nhân bình thường. Có thể có
nhiều chương server cùng làm một dịch vụ, chúng có thể nằm trên nhiều máy tính
hoặc một máy tính. Với mơ hình trên chúng ta nhận thấy rằng mơ hình client/server

SEUANGKINKEO

LIXOON

Lớp: 15B CNTT2 – Khoá 2015B

16


Luâ ̣n văn cao ho ̣c

chỉ mang đặc điểm của phần mềm khơng liên quan gì đến phần cứng mặc dù trên thực
tế yêu cầu cho một máy server là cao hơn nhiều so với máy client. Lý do là bởi vì máy
server phải quản lý rất nhiều các yêu cầu từ các clients khác nhau trên mạng. Ưu điể m

và nhược điểm chính có thể nói rằng với mơ hình client/server thì mọi thứ dường như
đều nằm trên bàn của người sử dụng, nó có thể truy cập dữ liệu từ xa (bao gồm các
công việc như gửi và nhận file, tìm kiếm thơng tin,...) với nhiều dịch vụ đa dạng mà
mơ hình cũ khơng thể làm được. Mơ hình client/server cung cấp một nền tảng lý tưởng
cho phép tích hợp các kỹ thuật hiện đại như mơ hình thiết kế hướng đối tượng, hệ
chuyên gia, hệ thông tin địa lý (GIS)... Một trong những vấn đề nảy sinh trong mơ
hình này đó là tính an tồn và bảo mật thông tin trên mạng. Do phải trao đổi dữ liệu
giữa 2 máy ở 2 khu vực khác nhau cho nên dễ dàng xảy ra hiện tượng thông tin truyền
trên mạng bị lộ [5].

Hình 2.1: Mơ hình Client server

2.2.1. Mơ hình Web client/server:
Thuật ngữ server được dùng cho những chương trình thi hành như một dịch vụ
trên tồn mạng. Các chương trình server này chấp nhận tất cả các yêu cầu hợp lệ đến
từ mọi nơi trên mạng, sau đó nó thi hành dịch vụ và trả kết quả về máy yêu cầu. Một
chương trình được coi là client khi nó gửi các u cầu tới máy có chương trình server
và chờ đợi câu trả lời từ server. Chương trình server và client nói chuyện với nhau
bằng các thơng điệp (messages) thông qua một cổng truyền thông liên tác IPC
(Interprocess Communication). Để một chương trình server và một chương trình client
có thể giao tiếp được với nhau thì giữa chúng phải có một chuẩn để nói chuyện, chuẩn
này được gọi là giao thức. Nếu một chương trình client nào đó muốn u cầu lấy thơng
tin từ server thì nó phải tuân theo giao thức mà server đó đưa ra. Bản thân chúng ta khi
cần xây dựng một mơ hình client/server cụ thể thì ta cũng có thể tự tạo ra một giao
thức riêng nhưng thường chúng ta chỉ làm được điều này ở tầng ứng dụng của mạng.
Với sự phát triển mạng như hiện này thì có rất nhiều giao thức chuẩn trên mạng ra đời
nhằm đáp ứng nhu cầu phát triển này. Các giao thức chuẩn (ở tầng mạng và vận
chuyển) được sử dụng rộng rãi nhất hiện nay như: giao thức TCP/IP, giao thức SNA

SEUANGKINKEO


LIXOON

Lớp: 15B CNTT2 – Khoá 2015B

17


Luâ ̣n văn cao ho ̣c

của IBM, OSI, ISDN, X.25 hoặc giao thức LAN-to-LAN NetBIOS. Một máy tính
chứa chương trình server được coi là một máy chủ hay máy phục vụ (server) và máy
chứa chương trình client được coi là máy tớ (client). Mơ hình mạng trên đó có các máy
chủ và máy tớ giao tiếp với nhau theo 1 hoặc nhiều dịch vụ được gọi là mơ hình
client/server. Thực tế thì mơ hình client/server là sự mở rộng tự nhiên và tiện lợi cho
việc truyền thơng liên tiến trình trên các máy tính cá nhân. Mơ hình này cho phép xây
dựng các chương trình client/server một cách dễ dàng và sử dụng chúng để liên tác với
nhau để đạt hiệu quả hơn [8],[5].

2.3. Ngơn ngữ lập trình PHP
2.3.1. Giới thiệu 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ữ
hồn chỉnh và được ưa chuộng trên tồn thế giới trong việc phát triển các ứng dụng
Web based.
PHP 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 qt. 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 [8].
a. Ví dụ:
// bắt đầu
echo “Hello World”;
?>
// kết thúc php

b. Ví du ̣ connect to database
$servername = "localhost";
$username = "root";
$password = "admin123";
// Create connection
$conn = new mysqli($servername, $username, $password);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}

SEUANGKINKEO

LIXOON

Lớp: 15B CNTT2 – Khoá 2015B

18



Luâ ̣n văn cao ho ̣c
echo "Connected successfully";
?>
c. Ví du ̣ update database
// ............edit............//
if(isset($_POST['departmentID']))
{
$departmentID = @$_POST["departmentID"];
$curriID = @$_POST["curriID"];
$khoa = @$_POST["khoa"];
$subpart = @$_POST["subpart"];
$teacherID = @$_POST["teacherID"];
$roomNo = @$_POST["roomNo"];
$timeFn = @$_POST["timeFn"];
$subjectID = @$_POST["subjectID"];
$trinhbay = @$_POST["trinhbay"];
$status = @$_POST["status"];
$stdID = @$_POST["stdID"];
$id = $_GET['lhAutoNo'];
$sql="update lichbaove set departmentID='$departmentID',
curriID='$curriID',
khoa='$khoa',
subpart='$subpart',
teacherID='$teacherID',
roomNo='$roomNo',
timeFn='$timeFn',
subjectID='$subjectID',
trinhbay='$trinhbay',
status='$status',

stdID='$stdID'
where lhAutoNo='$id'";
mysql_query($sql) or die(mysql_error());
echo " <script> location='lichbaove.php'; </script>";
}
if(isset($_GET['lhAutoNo']))
{
$return=mysql_query("select * from lichbaove where
lhAutoNo='".$_GET['lhAutoNo']."'")or die(mysql_error());
$rs=mysql_fetch_array($return);
$lhAutoNo = $rs["lhAutoNo"];
$departmentID = $rs['departmentID'];
$curriID = $rs["curriID"];
$khoa = $rs["khoa"];
$subpart = $rs["subpart"];
$teacherID = $rs["teacherID"];
$roomNo = $rs["roomNo"];
$timeFn = $rs["timeFn"];
$subjectID = $rs["subjectID"];

SEUANGKINKEO

LIXOON

Lớp: 15B CNTT2 – Khoá 2015B

19


Luâ ̣n văn cao ho ̣c

$trinhbay = $rs["trinhbay"];
$status = $rs["status"];
$stdID = $rs["stdID"];
}
else
{
echo"

Con not Update..!



";
echo "
[<a href=lichbaove.php>back</a>]
";
}
?>
d. Ví du ̣ delete database
# delete_subject.php
if(!isset($_GET["subjectID"]) || empty($_GET["subjectID"]) ) {
header("location:data_luanvan.php"); exit; }
$subjectID=$_GET["subjectID"];
if(!$_GET["p"]) {
echo "
font-weight:600; border:1px solid #FF0000; padding:10px; textalign:center\">
Do you want to delete ? if want press Yes else press No</div>[ href=?p=1&subjectID=$subjectID>Yes</a> ] [href=data_luanvan.php>No</a> ]
"; exit;
}
include("dbconf.php");
$cmdSQL="delete from detai where subjectID='$subjectID' ";
if(!$Qrs=mysql_query($cmdSQL,$conn)) {
echo "
Can not QUERU SQL :
".mysql_error()."
"; exit;
}
echo "<script>location='data_luanvan.php?subjectID=$subjectID'</script>"; exit;

?>

Tuy nhiên phiên bản đầu tiên vẫn được ưa chuộng và dùng phổ biến hơn.
- Lịch sử ra đời và phát triển
o Lịch sử ra đời của PHP
Phiên bản đầu tiên của PHP được phát triển năm 1994, bao gồm các macro cho
trang Web cá nhân (Personal Home Page).
Sau đó, PHP được phát triển thêm một số chức năng mới gọi là Form
Interpreter (PHP/FI) và có được sự quan tâm lớn từ phía cộng đồng.
Phiên bản tiếp theo, PHP3, được viết lại bởi một nhóm các lập trình viên (Zeev
Suraski, Andi Gutmans). PHP3 được bổ sung thêm một số tính năng và các cú pháp
ngôn ngữ khác, đã trở thành ngôn ngữ kịch bản phía máy chủ được ưa chuộng nhất.
Ngồi tốc độ xử lý được cải thiện rất nhiều, PHP 4.0 đem đến các tính năng chủ
yếu khác gồm có sự hỗ trợ nhiều máy chủ Web hơn, hỗ trợ phiên làm việc HTTP, tạo

SEUANGKINKEO

LIXOON

Lớp: 15B CNTT2 – Khoá 2015B

20


Luâ ̣n văn cao ho ̣c

bộ đệm thông tin đầu ra, nhiều cách xử lý thông tin người sử dụng nhập vào bảo mật
hơn và cung cấp một vài các cấu trúc ngôn ngữ mới.
PHP 5.1 Beta 3 được PHP Team cơng bố đánh dấu sự chín muồi mới của PHP
với sự có mặt của PDO, một nỗ lực trong việc tạo ra một hệ thống API nhất quán trong

việc truy cập cơ sở dữ liệu và thực hiện các câu truy vấn. Ngoài ra, trong PHP 5.1, các
nhà phát triển PHP tiếp tục có những cải tiến trong nhân Zend Engine 2, nâng cấp mô
đun PCRE lên bản PCRE 5.0 cùng những tính năng và cải tiến mới trong SOAL,
streams và SPL.
Hiện nay phiên bản tiếp theo của PHP đang được phát triển, PHP 6 bản sử dụng
thử đã có thể được download tại địa chỉ Phiên bản PHP 6 được kỳ
vọng sẽ lấp đầy những khiếm khuyết của PHP ở phiên bản hiện tại, ví dụ: hỗ trợ
namespace (hiện tại các nhà phát triển vẫn chưa công bố rõ ràng về vấn đề này); hỗ trợ
Unicode; sử dụng PDO làm API chuẩn cho việc truy cập cơ sở dữ liệu, các API cũ sẽ
bị đưa ra thành thư viện PECL...

2.3.2. Cách làm việc của PHP
PHP thường hoạt động theo thứ tự sau:
Người dùng gửi yêu cầu lên máy chủ.
Máy chủ xử lý yêu cầu (Thông dịch mã PHP và chạy chương trình, mã PHP có
thể truy xuất CSDL, tạo hình ảnh, đọc ghi file, tương tác với máy chủ khác...)
Máy chủ gửi dữ liệu về cho người dùng (thường là dưới dạng HTML)

Hình 2.2: Cách làm việc của PHP

2.3.3. Ưu điểm của PHP
Khi sử dụng PHP, người dùng sẽ có được tốc độ nhanh hơn nhiều so với các
ngôn ngữ kịch bản khác, bởi PHP là phần mềm mã nguồn mở, được hỗ trợ bởi nhiều
lập trình viên giỏi, có số lượng người dùng đơng đảo. Ngồ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
SEUANGKINKEO

LIXOON


Lớp: 15B CNTT2 – Khoá 2015B

21


Luâ ̣n văn cao ho ̣c

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.
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ì) [8].

2.3.4. Các tuỳ chọn của PHP
Giao thức HTTP (Hyper tex Transfer Protocol) là công nghệ không lưu giữ
trạng thái (các trang Web độc lập với nhau).Điều này có nghĩa là HTTP khơng có cách
nào để theo dõi người dùng hoặc giữ lại các biến khi họ truy xuất site. Để giải quyết
vấn đề này, người ta dùng ngôn ngữ kịch bản Web như PHP. Có một số tuỳ chọn để áp
dụng và hai tuỳ chọn phổ biến nhất là cookie và session.
Cookie
Trước khi cookie ra đời, việc lướt Web chỉ là một cuộc du lịch khơng ghi nhận

q trình. Mặc dù trình duyệt có ghi lại những trang Web đã truy cập, cho phép sử
dụng phím Back để quay trở lại trang đã truy cập trước đó nhưng máy chủ khơng lưu
giữ thông tin về người truy cập. Nếu máy chủ mà khơng có khả năng theo dõi truy cập,
ta khơng thể có được giỏ hàng trên mạng hoặc tuỳ biến các Website theo ý mình được.
Cookie là 1 đoạn dữ liệu được truyền đến browser từ server, đoạn dữ liệu này sẽ
được browser lưu trữ (trong memory hoặc trên đĩa) và sẽ gửi ngược lên lại server mỗi
khi browser tải 1 trang web từ server.
Những thông tin được lưu trữ trong cookie hoàn toàn phụ thuộc vào website
trên server. Mỗi website có thể lưu trữ những thơng tin khác nhau trong cookie, ví dụ
thời điểm lần cuối ghé thăm website, đánh dấu đã login hay chưa …
Cookie được tạo ra bởi website và gởi tới browser, do vậy 2 website khác nhau
(cho dù cùng host trên 1 server) sẽ có 2 cookie khác nhau gởi tới browser. Ngoài ra,
mỗi browser quản lý và lưu trữ cookie theo cách riêng của mình, cho nên 2 browser
cùng truy cập vào 1 website sẽ nhận được 2 cookie khác nhau [5],[8].
SEUANGKINKEO

LIXOON

Lớp: 15B CNTT2 – Khoá 2015B

22


Luâ ̣n văn cao ho ̣c

Session
Một trong những bổ xung cho PHP kể từ phiên bản 4 nó đã hỗ trợ
session.Session là khoảng thời gian người sử dụng giao tiếp với 1 ứng dụng.Session
bắt đầu khi người sử dụng truy cập vào ứng dụng lần đầu tiên, và kết thúc khi người sử
dụng thoát khỏi ứng dụng. Mỗi session sẽ có một định danh (ID), 1 session khác nhau

sẽ có 2 ID khác nhau. Trong ngữ cảnh ứng dụng web, website sẽ quyết định khi nào
session bắt đầu và kết thúc. Trong 1 session, website có thể lưu trữ một số thông tin
như đánh dấu đã login hay chưa, những bài viết nào đã đọc qua, v.v...[5],[6].

2.4. Hệ quản trị cơ sở dữ liệu MySQL
 Khái niệm
MySQL là hệ quản trị cơ sở dữ liệu mã nguồn mở miễn phí, được tích hợp sử
dụng chung với apache, PHP. MySQL quản lý dữ liệu thông qua các cơ sở dữ liệu,
mỗi cơ sở dữ liệu có thể có nhiều bảng quan hệ chứa dữ liệu. MySQL có cơ chế phân
quyền người sử dụng riêng, mỗi người dùng có thể được quản lý một hoặc nhiều cơ sở
dữ liệu khác nhau, mỗi người dùng có một tên truy cập (user name) và mật khẩu tương
ứng để truy xuất đến cơ sở dữ liệu. Khi ta truy vấn tới cơ sở dữ liệu MySQL, ta phải
cung cấp tên truy cập và mật khẩu của tài khoản có quyền sử dụng cơ sở dữ liệu đó.
Nếu khơng, chúng ta sẽ khơng làm được gì cả [1],[5],[8].
 Ưu

điểm của MySQL

Tốc độ: MySQL rất nhanh. Những nhà phát triển cho rằng MySQL là cơ sở dữ
liệu nhanh nhất mà bạn có thể có.
Dễ sử dụng: MySQL tuy có tính năng cao nhưng thực sự là một hệ thống cơ sở
dữ liệu rất đơn giản và ít phức tạp khi cài đặt và quản trị hơn các hệ thống lớn.
Giá thành: MySQL là miễn phí cho hầu hết các việc sử dụng trong một tổ chức.
Hỗ trợ ngôn ngữ truy vấn: MySQL hiểu SQL, là ngôn ngữ của sự chọn lựa cho
tất cả các hệ thống cơ sở dữ liệu hiện đại. Chúng ta cũng có thể truy cập MySQL bằng
cách sử dụng các ứng dụng mà hỗ trợ ODC (Open Database Connectivity - một giao
thức giao tiếp cơ sở dữ liệu được phát triển bởi Microsoft).
Năng lực: Nhiều máy khách có thể truy cập đến máy chủ trong cùng một thời
gian. Các máy khách có thể sử dụng nhiều cơ sở dữ liệu một cách đồng thời. Chúng ta
có thể truy cập MySQL tương tác với sử dụng một vài giao diện để có thể đưa vào các

truy vấn và xem các kết quả: các dòng yêu cầu của khách hàng, các trình duyệt Web…
Kết nối và bảo mật: MySQL được nối mạng một cách đầy đủ, các cơ sở dữ liệu
có thể được truy cập từ bất kỳ nơi nào trên Internet do đó có thể chia sẻ dữ liệu của

SEUANGKINKEO

LIXOON

Lớp: 15B CNTT2 – Khoá 2015B

23


×