1. Trang chủ
  2. » Thể loại khác

Session 3 PHP nang cao

29 123 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 29
Dung lượng 1,39 MB

Nội dung

Session 3 PHP nang cao tài liệu, giáo án, bài giảng , luận văn, luận án, đồ án, bài tập lớn về tất cả các lĩnh vực kinh...

PHP Nâng Cao Nội dung học n Include file PHP n Cookie PHP n Session PHP n Xử lý lỗi PHP Slide 2/ 28 Include tập tin PHP n Bạn chèn nội dung file PHP vào file PHP khác trước server thực thi Có hai hàm PHP dùng để thực việc hàm include() hàm require( n Đây điểm mạnh PHP giúp tạo hàm, phần header, footer thành phần khác lần tái sử dụng lại nhiều trang khác n Hai hàm giống nhau, khác cách xử lý lỗi: v Hàm include() sinh cảnh báo (Warning), script tiếp tục thực thi v Hàm require() sinh Fatal Error, script dừng lại Slide 3/ 28 Include file PHP n Ví dụ dùng hàm include() v Giả sử bạn có file header có tên "header.php" Để include header file trang, sử dụng hàm include() sau: Welcome to my home page

Some text

Slide 4/ 28 Include file PHP n Ví dụ dùng hàm include() v Code hàm include(): v Thông điệp lỗi: – Warning: include(wrongFile.php) [function.include]: failed to open stream: No such file or directory in C:\home\website\test.php test.php on line – Warning: include() [function.include]: Failed opening 'wrongFile.php' for inclusion (include_path='.;C:\php5\pear') (include_path='.;C: in C:\home\website\test.php test.php on line 5Hello World! Slide 5/ 28 Include file PHP n Ví dụ dùng hàm require() Slide 6/ 28 Cookie PHP n n n n Cookie file nhỏ(tối đa 4KB) server sử dụng để lưu thơng tin phía Trình duyệt Cookie thường dùng để lưu trữ thơng tin người sử dụng họ truy cập vào website Mỗi lần máy tính gửi yêu cầu trang web từ trình duyệt, gửi kèm theo cookie Khả tạo cookie phụ thuộc vào trình duyệt cho phép người sử dụng Slide 7/ 28 Cookie PHP n Hàm setcookie() dùng để tạo cookie v Cú pháp: setcookie(name, value, expire, [path], [domain]); n Ví dụ tạo cookie: v Chú ý: Hàm setcookie() phải xuất trước thẻ , trước lệnh echo, print Slide 8/ 28 Cookie PHP n Cách lấy giá trị Cookie v Sử dụng biến $_COOKIE để lấy giá trị cookie trình duyệt gửi đến v Bất kỳ có cookie gửi từ trình duyệt, Server tự động lưu cookie vào mảng global $_COOKIE v Trong ví dụ đây, lấy giá trị biến cookie có tên "user" hiển thị lên trang web: Slide 10/ 28 Hủy Session n n Nếu bạn muốn xóa vài liệu session, bạn sử dụng hàm unset() hàm session_destroy() Hàm unset() function dùng để giải phóng riêng lẻ biến session theo tên: n Bạn hủy toàn session cách gọi hàm session_destroy(): n Chú ý: Hàm session_destroy() reset session bạn bạn tất liệu lưu session Slide 15/ 28 Quản lý lỗi (error) ngoại lệ (exception) n n n Quản lý lỗi trình bắt lỗi phát sinh chương trình thực hành động phù hợp Khi có lỗi xảy ra, dòng thơng báo lỗi cho biết thơng tin: tên file, vị trí dòng phát sinh lỗi, … gửi phía trình duyệt => Chứa nhiều rủi ro bảo mật Có cách để xử lý lỗi PHP v Sử dụng hàm die() v Tạo hàm xử lý lỗi riêng & Error Trigger v Error logging / reporting Slide 16/ 28 Sử dụng hàm die() n Sử dụng hàm die() Slide 17/ 28 Quản lý lỗi tùy ý (Custom Error Handling) n n PHP cho phép tự viết hàm riêng để xử lý lỗi v Là hàm đặc biệt, gọi có lỗi xảy v Hàm phải có tối thiểu hai tham số: error level error message Cú pháp error_function_name( error_level , error_message, [error_file], [error_line], [error_context] ); Tham số error_level Mô tả Tham số bắt buộc, cấp độ lỗi cho lỗi người dùng (xem bảng cấp độ lỗi) error_message Nội dung thông báo, tham số bắt buộc error_file Tên file xảy lỗi Tham số tùy chọn error_line Vị trí dòng xảy lỗi Tham số tùy chọn error_context Mảng chứa danh sách biến giá trị sử dụng lỗi xảy Slide 18/ 28 Quản lý lỗi tùy ý (Custom Error Handling) n Bảng cấp độ lỗi (error level) Tất cấp độ lỗi thiết lập hàm dựng sẵn int error_reporting([int $level]) Slide 19/ 28 Quản lý lỗi tùy ý (Custom Error Handling) n Thiết lập trình quản lý lỗi (Set error handler) v Mặc định trình quản lý lỗi cho PHP trình quản lý lỗi dựng sẵn (built-in) (built v Để thay đổi trình quản lý lỗi: set_error_handler(“…”) Slide 20/ 28 Gây lỗi (trigger error) n Gây lỗi v v Có thể làm phát sinh lỗi người dùng nhập thông tin sai, việc sử dụng hàm trigger_error() Hàm có ích bạn cần đối phó lại ngoại lệ cụ thể lúc thực thi Slide 21/ 28 Gây lỗi (trigger error) n Ví dụ: Slide 22/ 28 Error logging n Mặc định PHP lưu thông báo lỗi vào tập tin server, gửi tập tin bên ngồi qua email,…bằng cách sử dụng hàm error_log() n Cấu hình log file php.ini n Hiển thị thông báo lỗi v Thêm vào dòng code sau v Hoặc sửa file php.ini v Để tắt thông báo lỗi cho tài liệu, thêm vào dòng sau Slide 23/ 28 Ngoại lệ (Exception) n n n Trong PHP có mơ hình ngoại lệ tương tự ngơn ngữ lập trình khác Trong PHP, ngoại lệ tung (thrown) bắt lại (catched) Ngoại lệ xử lý v Sử dụng try … catch… v Tạo trình quản lý ngoại lệ riêng v Tung bắt ngoại lệ v Slide 24/ 28 Sử dụng try, catch, throw n Cú pháp try { //các đoạn mã có khả gây lỗi đặt } catch (kiểu_ngoại_lệ_1 { $tên_đối_tượng_1) //Các câu lệnh xử lý có ngoại lệ xảy đặt } catch (kiểu_ngoại_lệ_n $tên_đối_tượng_n $tên_đối_tượng_n) { //Các câu lệnh xử lý có ngoại lệ xảy đặt } Slide 25/ 28 Sử dụng try, catch, throw n Mỗi khối try phải có khối catch n Có thể dùng nhiều khối catch để bắt nhiều loại ngoại lệ khác n n n n Khi có ngoại lệ xảy ra, PHP tìm khối catch phù hợp cho việc xử lý ngoại lệ đó, câu lệnh phía sau không thực thi Nếu ngoại lệ không bắt, lỗi Fatal Error phát sinh kèm theo thông báo ‘Uncaught Exception’’ throw sử dụng để tạo đối tượng ngoại lệ bên hàm Đối tượng ngoại lệ ném hàm đến nơi gọi hàm để xử lý Mỗi throw phải có tối thiểu catch Slide 26/ 28 Sử dụng try, catch, throw n Ví dụ: Slide 27/ 28 Ngoại lệ người dùng định nghĩa n n n Có thể định nghĩa thêm ngoại lệ ngoại lệ có sẵn khơng đáp ứng số tình đặc biệt ứng dụng Các lớp ngoại lệ người dùng định nghĩa thừa kế lớp có sẵn Exception Cách ngoại lệ người dùng định nghĩa quản lý ném lỗi giống với cách ngoại lệ có sẵn Slide 28/ 28 Đa ngoại lệ n Có thể ném nhiều ngoại lệ khối if … else n Bắt xử lý nhiều ngoại lệ try if(điều_kiệu_1){ { throw new kiểu_ngoại_lệ_1(); //các đoạn mã có khả gây lỗi đặt }}else if (điều_kiệu_2){ catch (kiểu_ngoại_lệ_1 $tên_đối_tượng_1 $tên_đối_tượng_1) throw new kiểu_ngoại_lệ_n(); { }else (điều_kiệu_n){ //Cácifcâu lệnh xử lý có ngoại lệ xảy đặt } throw new kiểu_ngoại_lệ_n(); catch (kiểu_ngoại_lệ_n $tên_đối_tượng_n) $tên_đối_tượng_n }else{ { new xử Exception(); //Các throw câu lệnh lý có ngoại lệ xảy đặt }} Catch (Exception $tên_đối_tượng_n) $tên_đối_tượng_n { //Bắt tất ngoại lệ } Slide 29/ 28 ... biến session. auto_start tập tin php. ini Slide 13/ 28 Session PHP n Lưu trữ lấy liệu biến Session v Các biến session lưu trữ mảng kết hợp $ _SESSION[ ] < ?php session_ start(); //Lưu trữ liệu vào session. .. học n Include file PHP n Cookie PHP n Session PHP n Xử lý lỗi PHP Slide 2/ 28 Include tập tin PHP n Bạn chèn nội dung file PHP vào file PHP khác trước server thực thi Có hai hàm PHP dùng để thực... tên định danh với tiền tố sess_iesess_8c7foj34c3jj973hjkop2fc 937 e7468 Khi truy xuất giá trị từ biến session, PHP lấy chuỗi định danh session từ cookie PHPSESSID,, sau tìm file có tên thư mục tạm,

Ngày đăng: 21/01/2018, 11:14

TỪ KHÓA LIÊN QUAN