Bài giảng Lập trình Web động với PHP/ MySQL (Mới)

1.1 Ngôn ngữ PHP và MySQL

PHP Hypertext Preprcessr (PHP) là một ngôn ngữ lập trình ch phép các lập trình viên web

tạ các nội dung động mà tương tác với Database. Về cơ bản, PHP được sử dụng để phát

triển các ứng dụng phần mềm trên web.

PHP khởi đầu như là một dự án mã nguồn mở nhỏ, nhưng the đà phát triển, ngày càng

nhiều người thấy rằng nó càng ngày càng hữu ích. PHP được phát triển từ một sản phẩm

có tên là PHP/FI. PHP/FI d Rasmus Lerdrf tạ ra năm 1994, ban đầu được xem như là một

tập cn đơn giản của các mã kịch bản Perl để the dõi tình hình truy cập đến bản sơ yếu lý

lịch của ông trên mạng. Ông đã đặt tên ch bộ mã kịch bản này là "Persnal Hme Page Tls".

Khi cần đến các chức năng rộng hơn, Rasmus đã viết ra một bộ thực thi bằng C lớn hơn để

có thể truy vấn tới Database và giúp ch người sử dụng phát triển các ứng dụng web đơn

giản. Rasmus đã quyết định công bố mã nguồn của PHP/FI ch mọi người xem, sử dụng

cũng như sửa các lỗi có trng nó, đồng thời cải tiến mã nguồn. PHP đã phát triển rất nhanh

chóng và trở thành ngôn ngữ lập trình web phổ biến nhất trên thế giới hiện nay.

1.1.1 Ngôn ngữ lập mã ngồn mở

Một số đặc điểm quan trọng của PHP:

 PHP viết hồi qui của "PHP: Hypertext Preprcessr".

 PHP là ngôn ngữ lập trình kịch bản viết ch máy chủ mà được nhúng trng

HTML. Nó được sử dụng để quản lý nội dụng động, Database, Sessin tracking,

 Nó được tích hợp với một số Database thông dụng như MySQL, PstgreSQL,

racle, Sybase, Infrmix, và Micrsft SQL Server.

 PHP thực thi rất tuyệt vời, đặc biệt khi được biên dịch như là một Apache

Mdule trên Unix side. MySQL Server, khi được khởi động, thực thi các truy

vấn phức tạp với các tập hợp kết quả khổng lồ trng thời gian Recrd-setting.

 PHP hỗ trợ một số lượng rộng rãi các gia thức lớn như PP3, IMAP, và LDAP.

PHP4 bổ sung sự hỗ trợ ch Java và các cấu trúc đối tượng phân phối (CM và

CRBA).

 Cú pháp PHP là giống C.

 PHP thực hiện các hàm hệ thống, ví dụ: từ các file trên một hệ thống, nó có thể

tạ, mở, đọc, ghi và đóng chúng.

 PHP có thể xử lý các frm, ví dụ: thu thập dữ liệu từ file, lưu dữ liệu và một file,

thông qua email bạn có thể gửi dữ liệu, trả về dữ liệu tới người dùng.

 Bạn có thể thêm, xóa, sửa đổi các phần tử bên trng Database của bạn thông qua

PHP.

 Truy cập các biến Ckie và thiết lập Ckie.

 Sử dụng PHP, bạn có thể hạn chế người dùng truy cập và một số trang trng

Website của bạn.

5 đặc trưng quan trọng làm PHP trở thành ngôn ngữ phổ biến:

 Đơn giản hóa

 Hiệu quả

 Bả mật ca

 Linh động

 Thân thiện

pdf 128 trang yennguyen 2540
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Lập trình Web động với PHP/ MySQL (Mới)", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Bài giảng Lập trình Web động với PHP/ MySQL (Mới)

Bài giảng Lập trình Web động với PHP/ MySQL (Mới)
 1 
(Tài liệu lƣu hành nội bộ) 
TRƢỜNG ĐẠI HỌC SƢ PHẠM KỸ THUẬT HƢNG YÊN 
KHOA CÔNG NGHỆ CÔNG NGHỆ THÔNG TIN 
LẬP TRÌNH WEB ĐỘNG VỚI PHP & MYSQL 
Hƣng Yên 
 2 
 3 
MỤC LỤC 
BÀI 1. BÀI 01: TỔNG QUAN VỀ PHP VÀ MYSQL .............................. 7 
1.1 Ngôn ngữ PHP và MySQL ...................................................................................... 7 
1.1.1 Ngôn ngữ lập mã ngồn mở ................................................................................................ 7 
1.1.2 Các đặc điểm PHP ............................................................................................................. 8 
1.1.3 Cơ bản về hệ quản trị CSDL mySQL ................................................................................. 8 
1.2 Cơ bản về cú pháp ngôn ngữ PHP.......................................................................... 8 
1.2.1 Thẻ (tag) trng PHP ............................................................................................................ 8 
1.2.2 Biến, hằng trng PHP .......................................................................................................... 9 
1.2.3 Tán tử trng PHP ...............................................................................................................10 
1.2.4 Lệnh chú thíc trng PHP ....................................................................................................12 
1.3 Cài đặt và cấu hình máy chủ Apache server ........................................................ 13 
BÀI 2. BÀI 02: CẤU TRÚC ĐIỀU KHIỂN TRNG PHP ....................... 15 
2.1 Cấu trúc rẽ nhánh ................................................................................................. 15 
2.1.1 Câu lệnh if else .................................................................................................................15 
2.1.2 Câu lênh swicth case ........................................................................................................16 
2.2 Cấu trúc lặp For .................................................................................................... 17 
2.2.1 Cấu trúc của for ................................................................................................................17 
2.2.2 Cấu trúc foreach ...............................................................................................................18 
2.3 Cấu trúc lặp While ................................................................................................ 18 
2.3.1 cấu trúc whie ....................................................................................................................18 
2.3.2 Cấu trúc do while .............................................................................................................19 
2.4 Lệnh ngắt trng PHP .............................................................................................. 20 
2.4.1 Lệnh Break .......................................................................................................................20 
2.4.2 Lệnh Cntinue ....................................................................................................................21 
BÀI 3. BÀI 03: LÀM VIỆC VỚI DỮ LIỆU FRM .................................. 22 
3.1 Thẻ PHP kết hợp với HTML ................................................................................ 22 
3.1.1 Thẻ PHP ...........................................................................................................................22 
3.1.2 Ví dụ về kết hợp PHP và HTML .......................................................................................22 
3.2 Nhận dữ liệu từ web .............................................................................................. 22 
3.2.1 Nhận dữ liệu he POST ......................................................................................................22 
3.2.2 Nhận dữ liệu the GET .......................................................................................................23 
3.3 Xuất dữ liệu về phía trình duyệt ........................................................................... 24 
3.3.1 Hàm Print .........................................................................................................................24 
 4 
3.3.2 Hàm Echo ........................................................................................................................ 25 
3.4 Nhúng trang PHP và trng trang PHP ...................................................................25 
3.4.1 Hàm Include và include_one ............................................................................................ 25 
3.4.2 Hàm Require và Require_one ........................................................................................... 25 
BÀI 4. LÀM VIỆC VỚI DỮ LIỆU MẢNG TRNG PHP ....................... 27 
4.1 Định nghĩa mảng trng PHP ...................................................................................27 
4.2 Khái niệm mảng kết hợp trng PHP.......................................................................27 
4.3 Thao tác các phần tử trong mảng .........................................................................27 
4.3.1 Đa mảng trong PHP ......................................................................................................... 30 
BÀI 5. LÀM VIỆC VỚI DỮ LIỆU KIỂU XÂU CHUỖI ....................... 32 
5.1 Chuỗi trng PHP .....................................................................................................32 
5.2 các tán tử tha tác chuỗi ..........................................................................................32 
5.3 Hàm tha tác chuỗi ..................................................................................................32 
BÀI 6. LÀM VIỆC VỚI FILE TỆP VÀ UPLAD FILE ......................... 36 
6.1 Đƣờng dẫn trng PHP .............................................................................................36 
6.1.1 Cấu trúc đường dẫn .......................................................................................................... 36 
6.1.2 Tha tác với các thư mục thông qua đường dẫn .................................................................. 36 
6.2 Thao tác với File tệp ..............................................................................................37 
6.2.1 Các hàm tha tác với File tệp ............................................................................................. 37 
6.2.2 Đọc file ............................................................................................................................ 38 
6.2.3 Ghi file............................................................................................................................. 39 
6.3 Uplad File trng PHP ..............................................................................................40 
6.3.1 Hàm Uplad file tệp ........................................................................................................... 40 
6.3.2 Xây dựng ứng dụng Uplad file tệp .................................................................................... 40 
BÀI 7. LẬP TRÌNH HƢỚNG ĐỐI TƢỢNG .......................................... 43 
7.1 Khái niệm về hàm và cách khai báo......................................................................43 
7.1.1 Khái niệm về hàm và sử dụng lại mã ................................................................................ 43 
7.1.2 Cách khai báo hàm trng PHP ............................................................................................ 43 
7.1.3 Hàm tự định nghĩa với giá trị trả về .................................................................................. 43 
7.1.4 Gọi lại hàm trng PHP ....................................................................................................... 44 
7.2 Lập tình hƣớng đối tƣợng trng PHP .....................................................................44 
7.3 Khai bá đối tƣợng và cách xây dựng .....................................................................45 
7.3.1 Cấu trúc đối tượng ........................................................................................................... 45 
7.3.2 Các thành phần của đối tượng........................................................................................... 46 
 5 
7.3.3 Một số từ khóa trng lập trình hướng đối trượng .................................................................47 
7.3.4 Xây dựng lớp ...................................................................................................................48 
BÀI 8. LẬP TRÌNH HƢỚNG ĐỐI TƢỢNG 02 ..................................... 51 
8.1 Sử dụng đối tƣợng trng PHP ................................................................................ 51 
8.1.1 Từ khóa New, this ............................................................................................................51 
8.1.2 Tán tử tha tác thành phần “->” ..........................................................................................51 
8.1.3 Sử dụng các thuộc tính và hàm .........................................................................................51 
8.2 Kế thừa trng PHP ................................................................................................. 53 
8.3 Lớp interface ......................................................................................................... 53 
8.4 Hàm abstract ......................................................................................................... 54 
BÀI 9. LẬP TRÌNH CƠ SỞ DỮ LIỆU VỚI MYSQL ............................ 56 
9.1 Giới thiệu về hệ quản trị CSDL MySQL .............................................................. 56 
9.2 Các lệnh cơ bản trên MySQL ............................................................................... 57 
9.3 Kết nối cơ sở dữ liệu MySQL từ PHP .................................................................. 58 
9.4 Đọc dữ liệu từ MySQL .......................................................................................... 59 
BÀI 10. LẬP TRÌNH CƠ SỞ DỮ LIỆU VỚI MYSQL 2 ....................... 62 
10.1 Ghi dữ liệu và CSDL mySQL ............................................................................. 62 
10.2 Cập nhật dữ liệu .................................................................................................. 62 
10.3 Xóa dữ liệu .......................................................................................................... 63 
10.4 Một số phƣơng pháp kết nối CSDL .................................................................... 63 
BÀI 11. BIẾN ĐỐI TƢỢNG TRNG PHP ............................................... 68 
11.1 Giới thiệu về các biến phía server....................................................................... 68 
11.2 Làm việc với Server ............................................................................................ 69 
11.3 Làm việc Sessin ................................................................................................... 70 
11.4 Làm việc Cookie .................................................................................................. 72 
BÀI 12. TỔNG QUAN VỀ LẬP TRÌNH CDEIGNITER ...................... 75 
12.1 Giới thiệu về Cdeigniter ...................................................................................... 75 
12.2 Đặc điểm của CodeIgniter .................................................................................. 75 
12.3 Cài đặt CodeIgniter............................................................................................. 75 
12.4 Cấu trúc một mdule trong CodeIgniter ............................................................. 76 
12.5 Viết ứng dụng đầu tiên ........................................................................................ 78 
12.6 Thực hiện kết nối CSDL ..................................................................................... 78 
 6 
BÀI 1. TL 1 VIẾT ỨNG DỤNG CƠ BẢN TRÊN PHP ......................... 82 
BÀI 2. TL 2 BÀI TÁN TÌM KIẾM TRÊN XÂU .................................... 83 
BÀI 3. TL 3 VIẾT WEBSITE THE MÔ HÌNH HƢỚNG ĐỐI TƢỢNG
 84 
BÀI 4. TL 4 SỬ DỤNG CƠ SỞ DỮ LIỆU THIẾT KẾ WEBSITE ....... 85 
BÀI 5. TL 5 XÂY DỰNG GIỎ HÀNG TRÊN PHP ............................... 86 
BÀI 1. TH 01 CÁC PHÉP TÁN CƠ BẢN .............................................. 87 
BÀI 2. TH 02. THA TÁC VỚI MẢNG VÀ XÂU .................................. 91 
BÀI 3. TH 03 LÀM VIỆC VỚI DỮ LIỆU TỆP ..................................... 96 
BÀI 4. TH 04 LẬP TRÌNH HƢỚNG ĐỐI TƢỢNG ............................ 102 
BÀI 5. TH 05: LẬP TRÌNH CƠ SỞ DỮ LIỆU .................................... 111 
BÀI 6. TH 06: LẬP TRÌNH CƠ SỞ DỮ LIỆU .................................... 115 
BÀI 7. TH 07. SỬ DỤNG BIẾN ĐỐI TƢỢNG TRONG PHP ............ 121 
BÀI 8. TH 08. CÀI ĐẶT KHAI THÁC CODEIGNITER................... 126 
 7 
PHẦN LÝ THUYẾT 
Bài 1. Tổng quan về PHP và MySQL 
1.1 Ngôn ngữ PHP và MySQL 
PHP Hypertext Preprcessr (PHP) là một ngôn ngữ lập trình ch phép các lập trình viên web 
tạ các nội dung động mà tương tác với Database. Về cơ bản, PHP được sử dụng để phát 
triển các ứng dụng phần mềm trên web. 
PHP khởi đầu như là một dự án mã nguồn mở nhỏ, nhưng the đà phát triển, ngày càng 
nhiều người thấy rằng nó càng ngày càng hữu ích. PHP được phát triển từ một sản phẩm 
có tên là PHP/FI. PHP/FI d Rasmus Lerdrf tạ ra năm 1994, ban đầu được xem như là một 
tập cn đơn giản của các mã kịch bản Perl để the dõi tình hình truy cập đến bản sơ yếu lý 
lịch của ông trên mạng. Ông đã đặt tên ch bộ mã kịch bản này là "Persnal Hme Page Tls". 
Khi cần đến các chức năng rộng hơn, Rasmus đã viết ra một bộ thực thi bằng C lớn hơn để 
có thể truy vấn tới Database và giúp ch người sử dụng phát triển các ứng dụng web đơn 
giản. Rasmus đã quyết định công bố mã nguồn của PHP/FI ch mọi người xem, sử dụng 
cũng như sửa các lỗi có trng nó, đồng thời cải tiến mã nguồn. PHP đã phát triển rất nhanh 
chóng và trở thành ngôn ngữ lập trình web phổ biến nhất trên thế giới hiện nay. 
1.1.1 Ngôn ngữ lập mã ngồn mở 
Một số đặc điểm quan trọng của PHP: 
 PHP viết hồi qui của "PHP: Hypertext Preprcessr". 
 PHP là ngôn ngữ lập trình kịch bản viết ch máy chủ mà được nhúng trng 
HTML. Nó được sử dụng để quản lý nội dụng động, Database, Sessin tracking, 
 Nó được tích hợp với một số Database thông dụng như MySQL, PstgreSQL, 
racle, Sybase, Infrmix, và Micrsft SQL Server. 
 PHP thực thi rất tuyệt vời, đặc biệt khi được biên dịch như là một Apache 
Mdule trên Unix side. MySQL Server, khi được khởi động, thực thi các truy 
vấn phức tạp với các tập hợp kết quả khổng lồ trng thời gian Recrd-setting. 
 PHP hỗ trợ một số lượng rộng rãi các gia thức lớn như PP3, IMAP, và LDAP. 
PHP4 bổ sung sự hỗ trợ ch Java và các cấu trúc đối tượng phân phối (CM và 
CRBA). 
 Cú pháp PHP là giống C. 
 PHP thực hiện các hàm hệ thống, ví dụ: từ các file trên một hệ thống, nó có thể 
tạ, mở, ... y.edu.vn 
 Thêm các thông tin có trong bảng sữa vào bang_tam 
 Hãy cập nhật lại đơn giá của sữa theo công thức sau: đơn giá = đơn giá cũ + 3% 
 114 
 Hãy tạo thêm cột trị giá cho bảng hoa_don sau đó tính trị giá cho mỗi hóa đơn và 
cập nhật cho cột trị giá của bảng này. 
 Hãy cập nhật lại giá tiền cho sữa trong bảng tạm có tên là 'canximex': giá mới là 
116000 VNĐ 
 Hãy cập nhật lại tên cho khách hàng có mã khách hàng 'KH005': tên mới là 'Lê 
Duy Anh' 
 Hãy cập nhật lại tên của loại sữa: 'sữa chua' thành sữa 'yaourt' 
 Hãy cập nhật lại đơn giá cho các sữa của hãng sữa Abbott: mỗi sữa có đơn giá tăng 
thêm 3000 VNĐ 
 Hãy xóa khách hàng có mã khách hàng là 'KH007' 
 Hãy xóa những sữa có trọng lượng nhỏ hơn 200gr hoặc có đơn giá nhỏ hơn 10.000 
VNĐ có trong bảng bang_tam 
 115 
Bài 6. TH 06: Lập trình cơ sở dữ liệu 
Phần 1. Bài tập có hƣớng dẫn 
Bài 1. Kết nối CSDL bằng MySQLi 
<?php 
$servername = "localhost"; 
$username = "username"; 
$password = "password"; 
// Create connection 
$conn = mysqli_connect($servername, $username, $password); 
// Check connection 
if (!$conn) { 
 die("Connection failed: " . mysqli_connect_error()); 
} 
echo "Connected successfully"; 
?> 
Bài 2. Kết nối cơ sở dữ liệu bằng PDO 
<?php 
$servername = "localhost"; 
$username = "username"; 
$password = "password"; 
try { 
 $conn = new PDO("mysql:host=$servername;dbname=myDB", $username, $password); 
 // set the PDO error mode to exception 
 $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 
 echo "Connected successfully"; 
 } 
catch(PDOException $e) 
 { 
 echo "Connection failed: " . $e->getMessage(); 
 } 
?> 
Phần 2. Bài tập tự làm 
Bài 1. Mục đích: 
 Làm quen với cách dùng PHP để kết nối vào MySQL 
 Biết cách chọn một CSDL và viết câu lệnh truy vấn dữ liệu 
 Làm quen với cách hiển thị dữ liệu trên lưới (table) 
Yêu cầu: 
 Tạo ra một trang hiển thị thông tin như sau: 
Yêu cầu chức năng 
 116 
Stt Đối tượng Yêu cầu xử lý chức năng 
1 trang 
luoi_tho_hang_sua 
 Thực hiện: 
Kết nối vào MySQL 
Chọn CSDL QL_BAN_SUA 
Đọc bảng HANG_SUA 
Xuất các thông tin về hãng sữa dưới dạng lưới thô (table) 
như hình trên. 
Bài 2. Mục đích: 
 Ôn lại cách kết hợp PHP và MySQL đọc dữ liệu trong bảng của CSDL 
 Làm quen với cách hiển thị dữ liệu có định dạng 
Yêu cầu: 
 Thiết kế trang hiển thị thông tin khách hàng có định dạng như sau 
Yêu cầu chức năng 
Stt Đối tượng Yêu cầu xử lý chức năng 
1 trang 
luoi_dinh_dang 
 Thực hiện: 
Kết nối vào MySQL 
Chọn CSDL QL_BAN_SUA 
Đọc bảng khach_hang 
Xuất các thông tin về khách hàng dạng lưới có định dạng như 
hình trên, trong đó: dòng tiêu đề có các cột được canh giữa, chữ 
in đậm, có màu khác so với các dòng nội dung; dòng chẵn và 
dòng lẻ ở phần nội dung có màu nền khác nhau; cột giới tính 
được canh giữa 
Bài 3. Mục đích: 
 Ôn lại cách kết hợp PHP và MySQL đọc dữ liệu trong bảng của CSDL 
 Làm quen với cách hiển thị dữ liệu có cột tùy biến 
Yêu cầu: 
 Thiết kế trang hiển thị thông tin khách hàng có tùy biến cột giới tính như sau 
 117 
Yêu cầu chức năng 
Stt Đối tượng Yêu cầu xử lý chức năng 
1 trang 
luoi_tuy_bien 
 Thực hiện: 
Kết nối vào MySQL, chọn CSDL QL_BAN_SUA 
Đọc bảng khach_hang 
Xuất các thông tin về khách hàng dạng lưới có định dạng như hình 
trên, trong đó: dòng tiêu đề có các cột được canh giữa, chữ in 
đậm, có màu khác so với các dòng nội dung; dòng chẵn và dòng lẻ 
hiển thị nội dung có màu nền khác nhau. 
Cột giới tính được canh giữa và sẽ hiển thị thông tin như sau: nếu 
giới tính của khách hàng là Nam thì hiển thị hình tượng trưng cho 
phái Nam, còn nếu ngược lại thì hiển thị hình tượng trưng cho 
phái Nữ như hình trên 
Bài 4. Mục đích: 
 Ôn lại cách kết hợp PHP và MySQL đọc dữ liệu trong bảng của CSDL 
 Làm quen với cách hiển thị dữ liệu có phân trang 
 Ôn lại cách sử dụng class 
Yêu cầu: 
 Thiết kế trang hiển thị thông tin sữa có phân trang như sau: 
Yêu cầu chức năng 
Stt Đối tượng Yêu cầu xử lý chức năng 
1 trang 
luoi_phan_trang 
 Yêu cầu: 
Kết nối vào MySQL 
Chọn CSDL QL_BAN_SUA 
Đọc bảng sữa, loại sữa, hãng sữa 
Sử dụng class pager để thực hiện việc phân trang, trong đó: 
 Mỗi trang gồm có hai dòng dữ liệu 
 Xuất thông tin dạng lưới có định dạng như hình trên (dòng 
chẵn và dòng lẻ có màu nền, màu chữ khác nhau, giá sữa định 
 118 
dạng theo kiểu tiền tệ) 
 Hiển thị danh sách trang theo dạng số 
Bài 5. Mục đích: 
 Ôn lại cách kết hợp PHP và MySQL đọc dữ liệu trong bảng của CSDL 
 Làm quen với cách hiển thị dữ liệu dạng list đơn giản 
Yêu cầu: 
 Tạo trang hiển thị thông tin các sản phẩm sữa dạng list như hình sau: 
Yêu cầu chức năng 
Stt Đối tượng Yêu cầu xử lý chức năng 
1 trang 
list_don_gian 
 Yêu cầu: 
Kết nối vào MySQL 
Chọn CSDL QL_BAN_SUA 
Đọc bảng sữa 
hiết kế và hiển thị thông tin các sản phẩm sữa như hình trên, trong 
đó: 
 Mỗi sữa hiển thị trên một dòng có hai cột: cột hình ảnh và cột 
nội dung (có tên sữa, hãng sản xuất, loại sữa, trọng lượng, đơn giá) 
Bài 6. Mục đích: 
 Ôn lại cách kết hợp PHP và MySQL đọc dữ liệu trong bảng của CSDL 
 Làm quen với cách hiển thị dữ liệu dạng list cột 
Yêu cầu: 
 Tạo trang hiển thị thông tin các sản phẩm sữa dạng list như hình sau: 
 119 
Yêu cầu chức năng 
Stt Đối tượng Yêu cầu xử lý chức năng 
1 trang 
list_dang_cot 
 Yêu cầu: 
Kết nối vào MySQL 
Chọn CSDL QL_BAN_SUA 
Đọc bảng sua 
Thiết kế và hiển thị thông tin các sản phẩm sữa như hình trên, trong 
đó: 
 Mỗi dòng có năm cột, trong mỗi cột có một table hiển thị 
thông tin sữa (tên sữa, trọng lượng, đơn giá) và hình ảnh. 
Bài 7. Mục đích: 
 Ôn lại cách kết hợp PHP và MySQL đọc dữ liệu trong bảng của CSDL 
 Làm quen với cách hiển thị dữ liệu dạng list cột, có link qua trang chi tiết và hiển 
thị thông tin chi tiết tương ứng với link đã chọn 
Yêu cầu: 
 Tạo hai trang, trong đó: 
 Trang đầu hiển thị thông tin các sản phẩm sữa dạng list và có link như hình sau: 
Trang sau hiển thị chi tiết của sản phẩm sữa đã chọn của trang trƣớc: 
 120 
Yêu cầu chức năng 
Stt Đối tượng Yêu cầu xử lý chức năng 
1 trang 
list_dang_cot_
co_link 
 Yêu cầu: 
Kết nối vào MySQL 
Chọn CSDL QL_BAN_SUA 
Đọc bảng sua 
Thiết kế và hiển thị thông tin các sản phẩm sữa như hình trên, 
trong đó: 
 Mỗi dòng có năm cột, trong mỗi cột có một table hiển thị 
thông tin sữa và hình ảnh tương ứng. 
 Ở mỗi tên sữa tạo một link qua trang list_chi_tiet và truyền 
vào mã sữa 
2 trang 
list_chi_tiet 
 Yêu cầu: 
 Hiển thị chi tiết sản phẩm sữa như định dạng hình trên tương 
ứng với mã sữa lấy được từ trang list_dang_cot_co_link truyền 
qua. 
Bài 8. Mục đích: 
 Ôn lại cách kết hợp PHP và MySQL đọc dữ liệu trong bảng của CSDL 
 Làm quen với cách hiển thị dữ liệu dạng list chi tiết và có phân trang 
Yêu cầu: 
 Tạo trang hiển thị thông tin chi tiết các sản phẩm sữa dạng list có phân trang: 
Yêu cầu chức năng 
Stt Đối tượng Yêu cầu xử lý chức năng 
1 trang 
list_phan_trang 
 Yêu cầu: 
Kết nối vào MySQL 
Chọn CSDL QL_BAN_SUA 
Đọc bảng sữa 
Thiết kế và hiển thị thông tin các sản phẩm sữa có phân trang 
như hình trên, trong đó: 
 Gọi sử dụng class pager cho sẵn để phân trang (hai sản 
phẩm một trang). 
 121 
Bài 7. TH 07. Sử dụng biến đối tƣợng trong PHP 
Phần 1. Bài tập có hƣớng dẫn 
Bài 1. Ví dụ về biến Session: 
- Tạo biến session 
<?php 
// Start the session 
session_start(); 
?> 
<?php 
// Set session variables 
$_SESSION["favcolor"] = "green"; 
$_SESSION["favanimal"] = "cat"; 
echo "Session variables are set."; 
?> 
- Gọi lại biến sesion 
<?php 
session_start(); 
?> 
<?php 
// Echo session variables that were set on previous page 
echo "Favorite color is " . $_SESSION["favcolor"] . "."; 
echo "Favorite animal is " . $_SESSION["favanimal"] . "."; 
?> 
Bài 2. Tạo và gọi lại biến Cookie 
<?php 
$cookie_name = "user"; 
$cookie_value = "John Doe"; 
setcookie($cookie_name, $cookie_value, time() + (86400 * 30), "/"); // 86400 = 1 day 
?> 
<?php 
if(!isset($_COOKIE[$cookie_name])) { 
 echo "Cookie named '" . $cookie_name . "' is not set!"; 
} else { 
 echo "Cookie '" . $cookie_name . "' is set!"; 
 echo "Value is: " . $_COOKIE[$cookie_name]; 
} 
?> 
Bài 3. Sửa đổi thông tin biến Cookie 
<?php 
$cookie_name = "user"; 
$cookie_value = "Alex Porter"; 
 122 
setcookie($cookie_name, $cookie_value, time() + (86400 * 30), "/"); 
?> 
<?php 
if(!isset($_COOKIE[$cookie_name])) { 
 echo "Cookie named '" . $cookie_name . "' is not set!"; 
} else { 
 echo "Cookie '" . $cookie_name . "' is set!"; 
 echo "Value is: " . $_COOKIE[$cookie_name]; 
} 
?> 
Bài 4. Xoá biến Cookie 
<?php 
// set the expiration date to one hour ago 
setcookie("user", "", time() - 3600); 
?> 
<?php 
echo "Cookie 'user' is deleted."; 
?> 
Phần 2. Bài tập tự làm 
Bài 1. Mục đích: 
 Làm quen với cách tạo và sử dụng session 
 Ôn lại các điều khiển đã học: TextField và Button 
Yêu cầu: 
 Tạo hai trang PHP có tên là tao_session và doc_session sau đó thực hiện các yêu 
cầu sau. 
Thiết kế hai trang nhƣ sau 
 Trang 1: tao_session 
Kết quả sau khi nhấn Đăng nhập 
 Trang 2: doc_session 
Kết quả sau khi nhấn Click here! của trang tao_session 
 123 
Yêu cầu thiết kế: 
Stt Đối tượng Yêu cầu 
1 Form Đặt tên cho Form 
 Thiết lập phương thức cho Form là post 
 Và action của Form là tên của trang 
2 Điều khiển Sử dụng điều khiển TextField, Button 
Yêu cầu chức năng 
Stt Đối tượng Yêu cầu xử lý chức năng 
1 Nút lệnh 
Đăng nhập 
 Khi chọn, thực hiện tính 
Lấy giá trị trên TextField sau đó gán cho các biến session sau đó hiển 
thị như hình trên 
Khi người dùng chọn link thì sẽ chuyển sang trang doc_session 
Ở trang doc_session yêu cầu đọc các biến session đã có ở trang 
tao_session và hiển thị như hình trên 
Khi người dùng chọn link thì sẽ quay trở về trang tao_session 
Bài 2. Mục đích: 
 Làm quen với cách tạo và sử dụng cookie 
Yêu cầu: 
 Tạo hai trang PHP có tên là tao_cookie và doc_cookie sau đó thực hiện yêu cầu. 
Thiết kế hai trang nhƣ sau 
tao_cookie 
Kết quả sau khi nhấn Xác nhận 
doc_cookie 
Kết quả sau khi nhấn Click here! của trang tao_cookie 
 124 
Yêu cầu thiết kế: 
Stt Đối tượng Yêu cầu 
1 Form Đặt tên cho Form 
 Thiết lập phương thức cho Form là post 
 Và action của Form là tên của trang 
2 Điều khiển Sử dụng điều khiển TextField, Button 
Yêu cầu chức năng 
Stt Đối tượng Yêu cầu xử lý chức năng 
1 Nút lệnh 
Xác nhận 
Khi chọn, thực hiện tính 
Lấy giá trị trên TextField gán cho biến cookie sau đó hiển thị như 
hình trên 
Khi người dùng chọn link thì sẽ chuyển sang trang doc_cookie 
Ở trang doc_cookie yêu cầu đọc biến cookie đã có ở trang 
tao_cookie và hiển thị như hình trên 
Khi người dùng chọn link thì sẽ quay trở về trang tao_cookie 
Bài 3. Mục đích: 
 Ôn lại cách tạo và sử dụng session 
 Ôn lại các điều khiển đã học: TextField, List/Menu và Button 
Yêu cầu: 
 Tạo hai trang PHP có tên là dang_nhap_session và dat_hang_session sau đó thực 
hiện yêu cầu sau: 
Thiết kế hai trang như sau 
Trang 1: dang_nhap_session 
Kết quả sau khi nhấn Đăng nhập 
Trang 2: dat_hang_session 
Kết quả sau khi nhấn Qua trang đặt hàng của trang dang_nhap_session 
 125 
Kết quả sau khi nhấn Đặt hàng 
Yêu cầu thiết kế: 
Stt Đối tượng Yêu cầu 
1 Form Đặt tên cho các Form 
 Thiết lập phương thức cho Form là post 
 Và action của Form là tên của trang 
2 Điều khiển Sử dụng điều khiển TextField, List/Menu Button 
Yêu cầu chức năng 
Stt Đối tượng Yêu cầu xử lý chức năng 
1 Nút lệnh 
Đăng nhập 
Khi chọn, thực hiện: 
Lấy giá trị trên TextField sau đó gán cho các biến session sau đó 
hiển thị như hình trên 
Khi người dùng chọn link thì sẽ chuyển sang trang 
dat_hang_session 
Ở trang dat_hang_session yêu cầu đọc biến session đã có ở trang 
dat_hang_session và hiển thị như hình trên 
2 Nút lệnh 
Đặt hàng 
 Khi chọn, thực hiện: 
Yêu cầu người dùng chọn mặt hàng và điền địa chỉ giao hàng. 
Hiển thị thông tin đặt hàng với địa chỉ của người đặt được viết hoa 
đầu từ. 
Khi người dùng chọn link thì sẽ quay về trang dang_nhap_session. 
 126 
Bài 8. TH 08. Cài đặt khai thác CodeIgniter 
Phần 1. Bài tập có hƣớng dẫn 
Bài 1. Tạo trang web đầu tiên sử dụng CodeIgniter. 
Mục đích: 
Làm quen với việc tạo một mô hình 3 lớp với CodeIgniter. 
Hƣớng dẫn: 
Tạo 1 file index.php trong thư mục application/controllers và viết vào nội dung sau: 
<?php 
class Index extends CODEIGNITER_Controller{ 
 public function __construct(){ 
 parent::__construct(); 
 } 
 public function index(){ 
 echo "Hello CodeIgniter"; 
 } 
} 
Bài 2. Viết chƣơng trình giải phƣơng trình bậc nhất trên CodeIgniter. 
Hƣớng dẫn: 
Bước 1. Trong thư mục application/controllers tạo file ptb1.php có nội dung sau: 
<?php 
defined('BASEPATH') OR exit('Khong tim thay'); 
class Ptbac1 extends CODEIGNITER_Controller { 
 public function __construct(){ 
 parent::__construct(); 
 } 
 public function index(){ 
 $a=1; 
 $kq1=""; 
 $c=$this->input->post("gpt"); 
 if(isset($c)){ 
 $a=$this->input->post("txt1"); 
 $b=$this->input->post("txt2"); 
 $x=-$b/$a; 
 $kq1="Ket qua phuong trinh: $x"; 
 } 
 $kq=array('kq' => $kq1); 
 $this->load->view("giaipt",$kq); 
 } 
} 
Bước 2. Tạo form giao diện trong thư mục view có tên là giaipt.php 
 GIai PT 
 Giai PT bac nhat 
 A= 
 B= 
 127 
<?php 
 echo "$kq"; 
?> 
Bài 3. Thực hiện kết nối CSDL với CodeIgniter 
Bước 1. Tạo một database trong mysql tên là CodeIgniterhd. 
Bước 2. Chỉnh sửa file config/database.php 
'dsn' => '', 
'hostname' => 'localhost', //địa chỉ máy chủ 
'username' => 'root', //Tên đăng nhập 
'password' => 'root', //mật khẩu 
'database' => 'CodeIgniterhd', //tên cơ sở dữ liệu 
'dbdriver' => 'mysqli', //kiểu kết nối 
'dbprefix' => '', 
Bước 3. Tạo file datatest.php trong thư mục models có nội dung sau: 
<?php 
class datatest extends CODEIGNITER_Model 
{ 
 public function __construct(){ 
 parent:__construct; 
 } 
 public function get_test(){ 
 $query=$this->db->query('select * from test'); 
 if($query->num_rows()>0){ 
 return $query->result_array(); 
 } 
 return false; 
 } 
} 
?> 
Bước 4. Tạo file datatest.php trong thư mục controllers có nội dung sau: 
<?php 
//defined('BASEPATH') OR exit('Khong tim thay'); 
class Datatest extends CODEIGNITER_Controller { 
 public function __construct(){ 
 parent::__construct(); 
 $this->load->model('data_test'); 
 } 
 public function index(){ 
 //$vi=$this->data->get_test(); 
 //$dl['vi']=$vi; 
 //$dl['path']=array('vi'); 
 $this->load->view('datatest'); 
 } 
} 
Bước 5. Tạo file datatest.php trong thư mục views có nội dung: 
 Test Database 
 " /> 
 128 
 ID 
 Name 
 <?php 
 //$vi=$data['test']; 
 foreach ($test as $sv) { 
 ?> 
 <?php 
 echo $sv['id']; 
 ?> 
 <?php 
 echo $sv['names']; 
 ?> 
 <?php 
 } 
 ?> 
Lưu lại và chạy ứng dụng. 
Phần 2. Bài tập tự làm 
Thực hiện các yêu cầu trong bài tập thực hành 6 sử dụng lập trình CodeIgniter. 

File đính kèm:

  • pdfbai_giang_lap_trinh_web_dong_voi_php_mysql_moi.pdf