24
Bài 7 Xây dựng website sử dụng PHP và MySQL

Bài 7 Xây dựng website sử dụng PHP và MySQL - Giáo trình FPT

Embed Size (px)

DESCRIPTION

1. Hệ thống lại kiến thức đã học 2. Các bước xây dựng một website động

Citation preview

Page 1: Bài 7 Xây dựng website sử dụng PHP và MySQL - Giáo trình FPT

Bài 7Xây dựng website

sử dụng PHP và MySQL

Page 2: Bài 7 Xây dựng website sử dụng PHP và MySQL - Giáo trình FPT

Nội dung bài học

1. Hệ thống lại kiến thức đã học

Bài 6: Lập trình PHP (phần 4) 2

2. Các bước xây dựng một website động

Page 3: Bài 7 Xây dựng website sử dụng PHP và MySQL - Giáo trình FPT

Bài 1: làm quen với môi trường PHP và MySQL (phần 1)Giới thiệu về lập trình web với PHP & MySQLHướng dẫn viết mã cho ứng dụng PHPHướng dẫn kiểm thử và gỡ lỗi cho ứng dụng PHP

Bài 2: làm quen với môi trường PHP và MySQL (phần 2)Giới thiệu về cơ sở dữ liệu quan hệ và MySQLHướng dẫn sử dụng PHP với MySQLGiới thiệu về mô hình MVC

Bài 3: lập trình PHP (phần 1)Viết câu lệnh điều khiểnKhởi tạo và sử dụng hàmKhởi tạo và sử dụng đối tượng

1. Hệ thống kiến thức đã học

Bài 1: làm quen với môi trường PHP và MySQL (phần 1)Giới thiệu về lập trình web với PHP & MySQLHướng dẫn viết mã cho ứng dụng PHPHướng dẫn kiểm thử và gỡ lỗi cho ứng dụng PHP

Bài 2: làm quen với môi trường PHP và MySQL (phần 2)Giới thiệu về cơ sở dữ liệu quan hệ và MySQLHướng dẫn sử dụng PHP với MySQLGiới thiệu về mô hình MVC

Bài 3: lập trình PHP (phần 1)Viết câu lệnh điều khiểnKhởi tạo và sử dụng hàmKhởi tạo và sử dụng đối tượng

Bài 7: Xây dựng website sử dụng PHP và MySQL 3

Page 4: Bài 7 Xây dựng website sử dụng PHP và MySQL - Giáo trình FPT

Bài 4: lập trình PHP (phần 2)Làm việc với chuỗi và sốLàm việc với ngày thángLàm việc với mảng

Bài 5: lập trình PHP (phần 3)Lấy dữ liệu từ formHiển thị dữ liệu lên trang web

Bài 6: lập trình PHP (phần 4)Làm việc với cookieLàm việc với session

Hệ thống kiến thức đã học

Bài 4: lập trình PHP (phần 2)Làm việc với chuỗi và sốLàm việc với ngày thángLàm việc với mảng

Bài 5: lập trình PHP (phần 3)Lấy dữ liệu từ formHiển thị dữ liệu lên trang web

Bài 6: lập trình PHP (phần 4)Làm việc với cookieLàm việc với session

Bài 7: Xây dựng website sử dụng PHP và MySQL 4

Page 5: Bài 7 Xây dựng website sử dụng PHP và MySQL - Giáo trình FPT

1. Giới thiệu về lập trình web với PHP & MySQL1.1. Kiến trúc của một ứng dụng web1.2. Cách thức xử lý trang web tĩnh1.3. Cách thức xử lý trang web động1.4. Tổng quan về các phần mềm web1.5. Giới thiệu môi trường làm việc PHP1.6. Giới thiệu phần mềm NetBeans1.7. Quy trình xây dựng một ứng dụng PHP đơn giản

2. Hướng dẫn viết mã cho ứng dụng PHP2.1. Các kỹ năng lập trình PHP cơ bản2.2. Truyền dữ liệu từ yêu cầu2.3. Làm việc với dữ liệu2.4. Các câu lệnh điều khiển

3. Hướng dẫn kiểm thử và gỡ lỗi cho ứng dụng PHP3.1. Giới thiệu về kiểm thử và sửa lỗi3.2. Hướng dẫn sửa lỗi với xDebug &NetBeans

Bài 1: làm quen vớimôi trường PHP & MySQL (phần 1)

1. Giới thiệu về lập trình web với PHP & MySQL1.1. Kiến trúc của một ứng dụng web1.2. Cách thức xử lý trang web tĩnh1.3. Cách thức xử lý trang web động1.4. Tổng quan về các phần mềm web1.5. Giới thiệu môi trường làm việc PHP1.6. Giới thiệu phần mềm NetBeans1.7. Quy trình xây dựng một ứng dụng PHP đơn giản

2. Hướng dẫn viết mã cho ứng dụng PHP2.1. Các kỹ năng lập trình PHP cơ bản2.2. Truyền dữ liệu từ yêu cầu2.3. Làm việc với dữ liệu2.4. Các câu lệnh điều khiển

3. Hướng dẫn kiểm thử và gỡ lỗi cho ứng dụng PHP3.1. Giới thiệu về kiểm thử và sửa lỗi3.2. Hướng dẫn sửa lỗi với xDebug &NetBeans

Bài 7: Xây dựng website sử dụng PHP và MySQL 5

Page 6: Bài 7 Xây dựng website sử dụng PHP và MySQL - Giáo trình FPT

1. Giới thiệu về cơ sở dữ liệu quan hệ và MySQL1.1. Giới thiệu về cơ sở dữ liệu quan hệ1.2. Các kiểu dữ liệu thông dụng trong MySQL1.3. Các câu lệnh dùng để thao tác dữ liệu trong SQL1.4. Giới thiệu MySQL1.5. Sử dụng phpMyAdmin

2. Hướng dẫn sử dụng PHP với MySQL2.1. Sử dụng PHP để làm việc với MySQL2.2. Lấy dữ liệu từ tập kết quả

3. Giới thiệu về mô hình MVC3.1. Giới thiệu về mô hình MVC3.2. Hướng dẫn viết hàm3.3. Hướng dẫn chuyển hướng yêu cầu

Bài 2: làm quen vớimôi trường PHP & MySQL (phần 1)

1. Giới thiệu về cơ sở dữ liệu quan hệ và MySQL1.1. Giới thiệu về cơ sở dữ liệu quan hệ1.2. Các kiểu dữ liệu thông dụng trong MySQL1.3. Các câu lệnh dùng để thao tác dữ liệu trong SQL1.4. Giới thiệu MySQL1.5. Sử dụng phpMyAdmin

2. Hướng dẫn sử dụng PHP với MySQL2.1. Sử dụng PHP để làm việc với MySQL2.2. Lấy dữ liệu từ tập kết quả

3. Giới thiệu về mô hình MVC3.1. Giới thiệu về mô hình MVC3.2. Hướng dẫn viết hàm3.3. Hướng dẫn chuyển hướng yêu cầu

Bài 7: Xây dựng website sử dụng PHP và MySQL 6

Page 7: Bài 7 Xây dựng website sử dụng PHP và MySQL - Giáo trình FPT

1. Viết câu lệnh điều khiển1.1. Viết mã cho biểu thức điều kiện1.2. Viết cấu trúc lựa chọn

2. Khởi tạo và sử dụng hàm2.1. Các kỹ năng cơ bản để làm việc với hàm

2.1.1. Khởi tạo và gọi hàm2.1.2. Truyền tham số theo giá trị và tham chiếu2.1.3. Sử dụng phạm vi hoạt động của biến2.1.4. Gán giá trị mặc định cho tham số2.1.5. Sử dụng danh sách tham số có độ dài biến đổi

2.2. Khởi tạo và sử dụng thư viện của hàm

Bài 3: lập trình PHP (phần 1)

1. Viết câu lệnh điều khiển1.1. Viết mã cho biểu thức điều kiện1.2. Viết cấu trúc lựa chọn

2. Khởi tạo và sử dụng hàm2.1. Các kỹ năng cơ bản để làm việc với hàm

2.1.1. Khởi tạo và gọi hàm2.1.2. Truyền tham số theo giá trị và tham chiếu2.1.3. Sử dụng phạm vi hoạt động của biến2.1.4. Gán giá trị mặc định cho tham số2.1.5. Sử dụng danh sách tham số có độ dài biến đổi

2.2. Khởi tạo và sử dụng thư viện của hàm

Bài 7: Xây dựng website sử dụng PHP và MySQL 7

Page 8: Bài 7 Xây dựng website sử dụng PHP và MySQL - Giáo trình FPT

3. Khởi tạo và sử dụng đối tượng3.1. Khởi tạo và sử dụng lớp3.2. Viết hằng, thuộc tính và phương thức của lớp3.3. Một số kỹ năng bổ sung3.4. Làm việc với kế thừa

Bài 3: lập trình PHP (phần 1)

Bài 7: Xây dựng website sử dụng PHP và MySQL 8

Page 9: Bài 7 Xây dựng website sử dụng PHP và MySQL - Giáo trình FPT

1. Làm việc với chuỗi và số1.1. Làm việc với chuỗi1.2. Làm việc với số1.3. Các kỹ năng khác

2. Làm việc với ngày tháng2.1. Sử dụng nhãn thời gian2.2. Sử dụng đối tượng

3. Làm việc với mảng3.1. Khởi tạo và sử dụng mảng3.2. Khởi tạo và sử dụng mảng liên kết3.3. Làm việc với hàng đợi và ngăn xếp3.4. Làm việc với mảng của mảng

Bài 4: lập trình PHP (phần 2)

1. Làm việc với chuỗi và số1.1. Làm việc với chuỗi1.2. Làm việc với số1.3. Các kỹ năng khác

2. Làm việc với ngày tháng2.1. Sử dụng nhãn thời gian2.2. Sử dụng đối tượng

3. Làm việc với mảng3.1. Khởi tạo và sử dụng mảng3.2. Khởi tạo và sử dụng mảng liên kết3.3. Làm việc với hàng đợi và ngăn xếp3.4. Làm việc với mảng của mảng

Bài 7: Xây dựng website sử dụng PHP và MySQL 9

Page 10: Bài 7 Xây dựng website sử dụng PHP và MySQL - Giáo trình FPT

Làm việc với form:1. Lấy dữ liệu từ form

1.1. Nhận dữ liệu từ textbox, hộp password, hidden field1.2. Lấy dữ liệu từ radio button1.3. Lấy dữ liệu từ checkbox1.4. Lấy dữ liệu từ mảng checkbox1.5. Lấy dữ liệu từ dropdown list1.6. Lấy dữ liệu từ list1.7. Lấy dữ liệu từ text area

2. Hiển thị dữ liệu lên trang web2.1. Định dạng các ký tự đặc biệt2.2. Định dạng ngắt dòng2.3. Hiển thị dữ liệu với câu lệnh echo và print

Bài 5: lập trình PHP (phần 3)

Làm việc với form:1. Lấy dữ liệu từ form

1.1. Nhận dữ liệu từ textbox, hộp password, hidden field1.2. Lấy dữ liệu từ radio button1.3. Lấy dữ liệu từ checkbox1.4. Lấy dữ liệu từ mảng checkbox1.5. Lấy dữ liệu từ dropdown list1.6. Lấy dữ liệu từ list1.7. Lấy dữ liệu từ text area

2. Hiển thị dữ liệu lên trang web2.1. Định dạng các ký tự đặc biệt2.2. Định dạng ngắt dòng2.3. Hiển thị dữ liệu với câu lệnh echo và print

Bài 7: Xây dựng website sử dụng PHP và MySQL 10

Page 11: Bài 7 Xây dựng website sử dụng PHP và MySQL - Giáo trình FPT

1. Làm việc với cookie1.1. Giới thiệu về cookie1.2. Thiết lập và truy xuất cookie1.3. Bật và tắt cookie

2. Làm việc với session2.1. Nguyên nhân khó sử dụng session với HTTP2.2. Cách thức hoạt động của session trong PHP2.3. Bắt đầu một session2.4. Gán và lấy giá trị của biến session2.5. Kết thúc một session2.6. Quản lý session

Bài 6: lập trình PHP (phần 4)

1. Làm việc với cookie1.1. Giới thiệu về cookie1.2. Thiết lập và truy xuất cookie1.3. Bật và tắt cookie

2. Làm việc với session2.1. Nguyên nhân khó sử dụng session với HTTP2.2. Cách thức hoạt động của session trong PHP2.3. Bắt đầu một session2.4. Gán và lấy giá trị của biến session2.5. Kết thúc một session2.6. Quản lý session

Bài 7: Xây dựng website sử dụng PHP và MySQL 11

Page 12: Bài 7 Xây dựng website sử dụng PHP và MySQL - Giáo trình FPT

2.1. Cài đặt các phần mềm cần thiết2.2. Xây dựng cơ sở dữ liệu MySQL2.3. Xây dựng phần front-end cho website2.4. Xây dựng phần back-end cho website2.5. Chạy thử và kiểm tra lỗi

2. Các bước lập trình một website

2.1. Cài đặt các phần mềm cần thiết2.2. Xây dựng cơ sở dữ liệu MySQL2.3. Xây dựng phần front-end cho website2.4. Xây dựng phần back-end cho website2.5. Chạy thử và kiểm tra lỗi

Bài 7: Xây dựng website sử dụng PHP và MySQL 12

Page 13: Bài 7 Xây dựng website sử dụng PHP và MySQL - Giáo trình FPT

Cài đặt PHP, MySQL, Apache: chỉ cần cài đặt gói phần mềm XAMPPCài đặt NetBeans để quản lý project, viết mã PHP, …Cài đặt xDebug để dò lỗi

2.1. Cài đặt các phần mềm cần thiết

Bài 7: Xây dựng website sử dụng PHP và MySQL 13

Page 14: Bài 7 Xây dựng website sử dụng PHP và MySQL - Giáo trình FPT

Sử dụng phpMyAdminBước 1: Khởi tạo cơ sở dữ liệu. Lưu ý chọn collation thích hợp để hỗtrợ tiếng ViệtBước 2: Khởi tạo các bảng với các trường có kiểu dữ liệu phù hợpBước 3: Điền dữ liệu vào các bảng. Công đoạn này cũng có thể thựchiện sau bằng cách sử dụng PHP

2.2. Xây dựng cơ sở dữ liệu

Bài 7: Xây dựng website sử dụng PHP và MySQL 14

Page 15: Bài 7 Xây dựng website sử dụng PHP và MySQL - Giáo trình FPT

Front-end: phần website tương tác với khách truy cập websitethông thườngLập trình viên thường có hai hướng xây dựng:

Xây dựng bình thường như các website HTML rồi thêm các đoạn mãPHP xử lý cần thiết vàoXây dựng theo mô hình MVC: Trong thực tế khi xây dựng mô hình MVCngười ta có thể kết hợp tầng Controller và tầng View

Hai kiểu lập trình:Lập trình hướng đối tượngLập trình bình thường (hướng cấu trúc)

2.3. Xây dựng phần front-end

Front-end: phần website tương tác với khách truy cập websitethông thườngLập trình viên thường có hai hướng xây dựng:

Xây dựng bình thường như các website HTML rồi thêm các đoạn mãPHP xử lý cần thiết vàoXây dựng theo mô hình MVC: Trong thực tế khi xây dựng mô hình MVCngười ta có thể kết hợp tầng Controller và tầng View

Hai kiểu lập trình:Lập trình hướng đối tượngLập trình bình thường (hướng cấu trúc)

Bài 7: Xây dựng website sử dụng PHP và MySQL 15

Page 16: Bài 7 Xây dựng website sử dụng PHP và MySQL - Giáo trình FPT

Xây dựng file kết nối tới cơ sở dữ liệu. Thông thường file này đượcsử dụng làm file thư việnVí dụ: tạo file database.php trong đó chứa mã PHP để kết nối tới cơsở dữ liệu. Sau này file nào cần kết nối thì chỉ việc gọi tới filedatabase.php bằng câu lệnh require/require_one

Xây dựng phần front-end

Bài 7: Xây dựng website sử dụng PHP và MySQL 16

Page 17: Bài 7 Xây dựng website sử dụng PHP và MySQL - Giáo trình FPT

Lấy dữ liệu từ tập kết quả: sử dụng cấu trúc lặp foreach và hàmfetch()Ví dụ:

Xây dựng file index.php:Đây là file người dùng sẽ truy cập đầu tiên khi vào website, từ đây mớitruy cập vào các mục khácThông thường người ta hay thiết kế các đoạn mã PHP làm nhiệm vụđiều hướng trong file này bằng cách sử dụng cấu trúc lựa chọn if elsehoặc switch caseSử dụng hàm header để chuyển hướng

Xây dựng phần front-end

Lấy dữ liệu từ tập kết quả: sử dụng cấu trúc lặp foreach và hàmfetch()Ví dụ:

Xây dựng file index.php:Đây là file người dùng sẽ truy cập đầu tiên khi vào website, từ đây mớitruy cập vào các mục khácThông thường người ta hay thiết kế các đoạn mã PHP làm nhiệm vụđiều hướng trong file này bằng cách sử dụng cấu trúc lựa chọn if elsehoặc switch caseSử dụng hàm header để chuyển hướng

Bài 7: Xây dựng website sử dụng PHP và MySQL 17

Page 18: Bài 7 Xây dựng website sử dụng PHP và MySQL - Giáo trình FPT

Ví dụ:

Xây dựng phần front-end

Bài 7: Xây dựng website sử dụng PHP và MySQL 18

Page 19: Bài 7 Xây dựng website sử dụng PHP và MySQL - Giáo trình FPT

Xây dựng các hàm xử lý dữ liệu: dữ liệu trong cơ sở dữ liệu nhiềukhi không hiển thị trực tiếp cho người dùng ngay được mà cần phảixử lýSử dụng các kiến thức:Khởi tạo và sử dụng hàmLàm việc với chuỗi và sốLàm việc với ngày thángLàm việc với mảng

Xây dựng phần front-end

Xây dựng các hàm xử lý dữ liệu: dữ liệu trong cơ sở dữ liệu nhiềukhi không hiển thị trực tiếp cho người dùng ngay được mà cần phảixử lýSử dụng các kiến thức:Khởi tạo và sử dụng hàmLàm việc với chuỗi và sốLàm việc với ngày thángLàm việc với mảng

Bài 7: Xây dựng website sử dụng PHP và MySQL 19

Page 20: Bài 7 Xây dựng website sử dụng PHP và MySQL - Giáo trình FPT

Xây dựng cookie/session cho website nếu cần lưu và theo dõi trạngthái của khách truy cậpSử dụng kiến thức: làm việc với cookie và sessionVí dụ:

Xây dựng phần front-end

Bài 7: Xây dựng website sử dụng PHP và MySQL 20

Page 21: Bài 7 Xây dựng website sử dụng PHP và MySQL - Giáo trình FPT

Xây dựng giao diện người dùng với HTML, CSS, Javascript. Có thểsử dụng phương pháp nhúng mã PHP vào mã HTML để nhập/xuấtdữ liệu cần thiếtSử dụng kiến thức làm việc với formVí dụ:

Xây dựng phần front-end

Xây dựng giao diện người dùng với HTML, CSS, Javascript. Có thểsử dụng phương pháp nhúng mã PHP vào mã HTML để nhập/xuấtdữ liệu cần thiếtSử dụng kiến thức làm việc với formVí dụ:

Bài 7: Xây dựng website sử dụng PHP và MySQL 21

Page 22: Bài 7 Xây dựng website sử dụng PHP và MySQL - Giáo trình FPT

Back-end: phần website dành cho người quản trịTùy vào nhu cầu quản trị mà một website có thể có hoặc không cầnphần back-end tách rời với front-endCách thức xây dựng phần back-end tương tự như phần front-end,chỉ khác về phương hướng xây dựng là để quản trịPhần back-end thường được thiết kế gói trong một folderVí dụ:

2.4. Xây dựng phần back-end

Back-end: phần website dành cho người quản trịTùy vào nhu cầu quản trị mà một website có thể có hoặc không cầnphần back-end tách rời với front-endCách thức xây dựng phần back-end tương tự như phần front-end,chỉ khác về phương hướng xây dựng là để quản trịPhần back-end thường được thiết kế gói trong một folderVí dụ:

Bài 7: Xây dựng website sử dụng PHP và MySQL 22

Page 23: Bài 7 Xây dựng website sử dụng PHP và MySQL - Giáo trình FPT

Bước cuối cùng là chạy thử project. Nếu xuất hiện lỗi thì dùngxDebug để theo dõi tìm hiểu nguyên nhân rồi xử lýSử dụng kiến thức:

Sửa lỗi với NetBeans và xDebugKỹ năng lập trình PHP cơ bản: theo dõi lỗi

Ví dụ: đặt các câu lệnh echo để theo dõi giá trị của biến dưới dạngcomment rồi kích hoạt khi cần:

2.5. Chạy thử và kiểm tra lỗi

Bước cuối cùng là chạy thử project. Nếu xuất hiện lỗi thì dùngxDebug để theo dõi tìm hiểu nguyên nhân rồi xử lýSử dụng kiến thức:

Sửa lỗi với NetBeans và xDebugKỹ năng lập trình PHP cơ bản: theo dõi lỗi

Ví dụ: đặt các câu lệnh echo để theo dõi giá trị của biến dưới dạngcomment rồi kích hoạt khi cần:

Bài 7: Xây dựng website sử dụng PHP và MySQL 23

Page 24: Bài 7 Xây dựng website sử dụng PHP và MySQL - Giáo trình FPT

Để lập trình một website động với PHP và MySQL có 5 bước chính:1. Cài đặt các phần mềm cần thiết2. Xây dựng cơ sở dữ liệu MySQL3. Xây dựng phần front-end cho website4. Xây dựng phần back-end cho website5. Chạy thử và kiểm tra lỗi

Hai hướng xây dựng:Xây dựng bình thường như các website HTML rồi thêm các đoạn mãPHP xử lý cần thiết vàoXây dựng theo mô hình MVC: Trong thực tế khi xây dựng mô hình MVCngười ta có thể kết hợp tầng Controller và tầng View

Hai kiểu lập trình:Lập trình hướng đối tượngLập trình bình thường (hướng cấu trúc)

Tổng kết bài học

Để lập trình một website động với PHP và MySQL có 5 bước chính:1. Cài đặt các phần mềm cần thiết2. Xây dựng cơ sở dữ liệu MySQL3. Xây dựng phần front-end cho website4. Xây dựng phần back-end cho website5. Chạy thử và kiểm tra lỗi

Hai hướng xây dựng:Xây dựng bình thường như các website HTML rồi thêm các đoạn mãPHP xử lý cần thiết vàoXây dựng theo mô hình MVC: Trong thực tế khi xây dựng mô hình MVCngười ta có thể kết hợp tầng Controller và tầng View

Hai kiểu lập trình:Lập trình hướng đối tượngLập trình bình thường (hướng cấu trúc)

Bài 7: Xây dựng website sử dụng PHP và MySQL 24