
BỘ CÔNG THƯƠNG
TRƯỜNG ĐẠI HỌC SAO ĐỎ
TÀI LIỆU HỌC TẬP
PHÁT TRIỂN ỨNG DỤNG WEB
Dùng cho sinh viên đại học
Ngành Công nghệ thông tin
(Tài liệu lưu hành nội bộ)
NĂM 2023


MỤC LỤC
LỜI NÓI ĐẦU ................................................................................................................. 1
DANH MỤC TỪ VIẾT TẮT .......................................................................................... 2
PHẦN 1. LÝ THUYẾT .................................................................................................. 3
Chương 1. TỔNG QUAN................................................................................................ 3
1.1. Kiến trúc ứng dụng web ........................................................................................ 3
1.1.1. Khái niệm ....................................................................................................... 3
1.1.2. Một số kiến trúc ứng dụng web phổ biến ....................................................... 5
1.1.3. Mô hình lập trình dự án web .......................................................................... 9
1.2. Cấu hình máy chủ web ........................................................................................ 14
1.2.1. Cài đặt Xampp.............................................................................................. 14
1.2.2. Tạo tên miền ảo trên localhost ..................................................................... 17
CÂU HỎI ÔN TẬP CHƯƠNG 1 .................................................................................. 19
Chương 2. CƠ SỞ DỮ LIỆU MYSQL ......................................................................... 20
2.1. Cơ sở dữ liệu quan hệ ......................................................................................... 20
2.1.1. Tổng quan .................................................................................................... 20
2.1.2. Structured Query Language - SQL .............................................................. 21
2.1.3. MySQL .......................................................................................................... 23
2.2. Các lệnh cơ bản trong MySQL ........................................................................... 23
2.2.1. Định nghĩa dữ liệu ....................................................................................... 23
2.2.2. Truy vấn dữ liệu - Select .............................................................................. 25
2.2.3. Thao tác dữ liệu ........................................................................................... 29
2.3. Sử dụng phpMyAdmin ....................................................................................... 30
2.3.1. Tạo cơ sở dữ liệu .......................................................................................... 30
2.3.2. Tạo bảng ....................................................................................................... 31
2.3.3. Xem cấu trúc bảng ....................................................................................... 34
2.3.4. Tạo quan hệ .................................................................................................. 34
2.3.5. Quản lý dữ liệu bảng .................................................................................... 39
2.3.6. Xuất dữ liệu ra tệp ........................................................................................ 40
2.3.7. Nhập dữ liệu từ tệp ....................................................................................... 41
CÂU HỎI ÔN TẬP CHƯƠNG 2 .................................................................................. 42

Chương 3. LẬP TRÌNH PHP ........................................................................................ 44
3.1. Tổng quan ........................................................................................................... 44
3.1.1. Cấu trúc của PHP ........................................................................................ 44
3.1.2. Hằng, biến .................................................................................................... 44
3.1.3. Các toán tử và biểu thức .............................................................................. 48
3.1.4. Truyền biến giữa các trang web .................................................................. 49
3.1.5. Sử dụng chỉ thị include ................................................................................ 51
3.2. Các kiểu dữ liệu cơ bản ...................................................................................... 52
3.2.1. Kiểu số nguyên ............................................................................................. 52
3.2.2. Kiểu số thực ................................................................................................. 52
3.2.3. Kiểu logic ..................................................................................................... 52
3.2.4. Kiểu chuỗi ký tự ........................................................................................... 53
3.3. Các kiểu dữ liệu phức tạp ................................................................................... 54
3.3.1. Kiểu mảng .................................................................................................... 54
3.3.2. Kiểu rỗng ..................................................................................................... 57
3.3.3. Kiểu đối tượng ............................................................................................. 57
3.4. Các câu lệnh điều khiển ...................................................................................... 58
3.4.1. Cấu trúc if … else … elseif .......................................................................... 58
3.4.2. Cấu trúc switch ............................................................................................ 60
3.4.3. Cấu trúc for, foreach ................................................................................... 61
3.4.4. Cấu trúc while và do.. while ........................................................................ 62
3.4.5. Cấu trúc try .................................................................................................. 63
3.5. Làm việc với cơ sở dữ liệu MySQL ................................................................... 65
3.5.1. Kết nối với cơ sở dữ liệu .............................................................................. 65
3.5.2. Thao tác với cơ sở dữ liệu ............................................................................ 67
3.5.3. Đóng kết nối ................................................................................................. 76
3.6. Lập trình hướng đối tượng .................................................................................. 76
3.6.1. Hàm .............................................................................................................. 76
3.6.2. Lớp và đối tượng .......................................................................................... 87
3.7. Làm việc với Session và Cookie ........................................................................ 99
3.7.1. Session .......................................................................................................... 99

3.7.2. Cookie ........................................................................................................ 101
CÂU HỎI ÔN TẬP CHƯƠNG 3 ................................................................................ 103
Chương 4. MÔ HÌNH MVC ........................................................................................ 105
4.1. Giới thiệu mô hình MVC .................................................................................. 105
4.2. Tầng model ....................................................................................................... 108
4.3. Tầng controller .................................................................................................. 111
4.3.1. Xây dựng BaseController ........................................................................... 111
4.3.2. Xây dựng PagesController ......................................................................... 112
4.3.3. Xây dựng PostsControllers ........................................................................ 113
4.4. Tầng view ......................................................................................................... 114
4.4.1. Module Pages ............................................................................................. 114
4.4.2. Module Posts .............................................................................................. 114
CÂU HỎI ÔN TẬP CHƯƠNG 4 ................................................................................ 116
PHẦN 2. THỰC HÀNH .............................................................................................. 117
Bài 1. Cài đặt Xampp và cấu hình tên miền ảo ....................................................... 117
Bài 2. Quản trị cơ sở dữ liệu trong phpMyAdmin ................................................... 117
Bài 3. Lập trình các câu lệnh điều khiển ................................................................. 118
Bài 4. Lập trình với kiểu chuỗi ký tự và mảng ........................................................ 120
Bài 5. Lập trình tương tác với cơ sở dữ liệu MySQL .............................................. 121
Bài 6. Lập trình hướng đối tượng ............................................................................ 130
Bài 7. Lập trình theo mô hình MVC ........................................................................ 144
Bài 8. Lập trình website thương mại điện tử ........................................................... 159
TÀI LIỆU THAM KHẢO ........................................................................................... 160