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
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)
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:
- bai_giang_lap_trinh_web_dong_voi_php_mysql_moi.pdf