Bài giảng PHP và MyQL chương 5

52 11 0
  • Loading ...
1/52 trang

Thông tin tài liệu

Ngày đăng: 09/06/2018, 23:11

CHƯƠNG Lập trình ứng dụng WEB với PHP Các chủ đề Lập trình ứng dụng WEB với PHP .121 Mục tiêu 122 Câu hỏi kiểm tra mở đầu 122 1.Trao đổi thơng tin với trình duyệt 124 1.1Truyền liệu thông qua phương thức GET 124 1.2 Phương thức POST .126 2.Làm việc với Cookies 128 2.1 Cookie gì? 128 2.2 Các hạn chế Cookie 129 2.3 Cookie PHP 130 2.4 Khai báo tạo cookie 130 2.5 Bạn tên gì? 133 2.6 Truy cập cookie .134 2.7 Thiết lập cookie .134 2.8 Các cookie nhiều giá trị 134 2.9 Thiết lập ngày hết hạn 135 Mục tiêu Sau hồn thành chương này, có thể:  Phân tích khác hai phương thức POST GET vận dụng chúng để lấy liệu từ Form  Biết cách khai báo tạo cookie  Trình bày tầm quan trọng cookie ứng dụng thực tế  Trình bày bước để kết nối csdl MySQL hiển thị liệu trang web  Vận dụng thao tác thêm, xóa, sửa liệu Câu hỏi kiểm tra mở đầu Trả lời câu hỏi sau: MySQL là? a Cơ sở liệu b Hệ sở liệu c Hệ quản trị sở liệu Trong ASP.NET để lấy liệu từ Form dùng phương thức GET dùng lệnh? a Request.QueryString.Get b Request.Form.Get c Request.Get d Request.GetValue Theo bạn giải pháp tốt để phân quyền người dùng ứng dụng web? a Dùng lệnh rẽ nhánh để phân quyền b Lưu dấu người dùng định lệnh rẽ nhánh c Lưu dấu người dùng định URL Nếu trình hiển thị liệu lớn (500 ghi), nghĩ đến giải pháp gì? a Hạn chế liệu hiển thị b Phân trang c Truy vấn có điều kiện để hạn chế liệu hiển thị d Không vấn đề Theo bạn, trang web HTML có kết nối tới sở liệu khơng? a Có b Khơng 1.Trao đổi thơng tin với trình duyệt Dữ liệu người dùng từ trình duyệt gửi lên máy chủ dạng cặp biến=giá_trị theo đường khác Tuỳ theo đường cụ thể, máy chủ ta có cách khác để lấy liệu gửi lên đường là: GET, POST COOKIES Trong phần này, tìm hiểu GET POST Chúng ta tìm hiểu Cookie phần sau: 1.1 Truyền liệu thông qua phương thức GET Dữ liệu gửi từ trình duyệt lên qua phương thức GET phần liệu nhập trực sau địa URL trình duyệt gửi lên, phân biệt với tên file script dấu hỏi chấm (?) Ví dụ, ta gõ vào trình duyệt địa URL sau: http://codienhanoi.edu.vn/diendan/topic.php?TOPIC_ID=161 Khi đó, trình duyệt gửi theo địa cặp biến = giá trị, biến có tên TOPIC_ID giá trị 161 (TOPIC_ID=161) Chúng ta đưa lên nhiều cặp biến=giá_trị cách phân cách chúng dấu &: http://codienhanoi.edu.vn/diendan/index.php? method=Reply&TOPIC_ID=161&FORUM_ID=20 Địa URL trên, gửi lên cặp biến=giá_trị theo phương thức GET, là: method=Reply, TOPIC_ID=161 FORUM_ID=20 Khi trình duyệt gửi thơng tin lên máy chủ, PHP tự động sinh mảng có tên $_GET[] để nắm giữ tất cặp biến giá trị đó, đó, số mảng chuỗi mang tên tên biến giá trị số giá trị biến trình duyệt gửi lên Ví dụ, với địa URL sau: http://codienhanoi.edu.vn/diendan/post.php? method=Reply&TOPIC_ID=161&FORUM_ID=20 Thì PHP tự động sinh mảng $_GET có nội dung sau: $_GET["method"] = "Reply" // tương ứng với cặp method=Reply $_GET["TOPIC_ID"] = 161 // tương ứng với cặp TOPIC_ID=161 $_GET["FORUM_ID"] = 20 // tương ứng với cặp FORUM_ID=20 Ví dụ, tạo hai file: wellcome.html wellcome.php // wellcome.html Name: Age: Khi người dùng nhấp vào nút submit, URL gửi tới server trơng giống này: http://codienhanoi.edu.vn/welcome.php?fname=Peter&age=37 File “wellcome.php” sử dụng hàm $_GET để thu thập liệu (Các tên trường Form tự động khóa mảng $_GET): Welcome . You are years old! Khi chạy trình duyệt, hiển thị: Welcome Peter! You are 37 years old Chú ý: Phương thức không nên sử dụng gửi password thông tin nhạy cảm khác Tuy nhiên, biến hiển thị URL, đánh dấu trang Điều hữu ích số trường hợp Một lưu ý phương thức GET khơng thích hợp cho giá trị biến lớn (giá trị vượt 100 ký tự) 1.2 Phương thức POST Post phần liệu gửi qua form HTML có method ="POST" (xin xem lại HTML) Để lấy biến theo kiểu POST, PHP tự động sinh mảng có tên $_POST[] Mảng có số tên phần tử form (các thẻ input, select có thuộc tính name) giá trị nội dung giá trị người sử dụng nhập vào phần tử có tên tương ứng Chẳng hạn với mẫu biểu HTML sau: User Name: Password: Sex: Male Female Khi người dùng nhập user name (giả sử hieulv68), password (giả sử 123456) chọn sex Male, đó, mảng $_POST có phần tử sau: $_POST["T1"] = hieulv68 $_POST["T2"] = 123456 $_POST["sex"] = Đây ví dụ chương trình giải phương trình bậc Nhập a: Nhập b: 2.Làm việc với Cookies Khi trang web tĩnh phát triển ứng dụng web động, điều cần thiết cho ứng dụng trì trạng thái, khả giữ lại giá trị biến giữ lại các thông tin người dùng (Người đăng nhập vào hệ thống) Với công nghệ trước chẳng hạn CGI client đưa yêu cầu, server tạo phản hồi gửi trả Khi yêu cầu khác nhận từ người dùng đó, server khơng có kế hoạch hành động có u cầu trước Điều giao thức HTTP chưa công nhận 2.1 Cookie gì? Cookie phát triển để giải vấn đề trì trạng thái người ghé thăm sau đến trang web lần truy cập vào trang khác trang web Cookie cho phép máy chủ lưu trữ truy xuất liệu ổ cứng client Điều tạo tên miền ứng dụng mà theo dõi đường dẫn client thơng qua trang web: ví dụ, ứng dụng thương mại điện tử lưu trữ ghi lựa chọn khách hàng, trang web thành viên nhớ ID cho người dùng web server tạo hồ sơ khách truy cập Trong tất trường hợp này, cookie dùng để lưu trữ liệu client Có hạn chế cụ thể để tránh lạm dụng cookie Đầu tiên, trình duyệt giới hạn đến 300 cookie 20 cookie cho server Nếu ứng dụng cần để trì nhiều liệu hơn, cần giữ liệu phía server (điều thực với hỗ trợ PHP 4.0, lưu trữ sở liệu) Thứ hai, cookie gửi đến server phép nhận chúng Khi server thiết lập cookie, hạn chế phạm vi máy chủ cookie gửi tới Bởi cookie chứa liệu nhạy cảm, bị rò rỉ liệu dẫn đến lỗ thủng bảo mật 2.2 Các hạn chế Cookie Phạm vi cookie xác định việc gửi phản hồi HTTP web server Phản hồi bao gồm thông tin sau:     Thơng tin hết hạn (ví dụ: 01/01/2000, 03:00:00) Thơng tin đường dẫn (ví dụ: /cgi-bin/php) Thơng tin tên miền (ví dụ: codienhanoi.edu.vn) Một tham số an tồn Thơng tin hết hạn sử dụng để kiểm tra cookie hợp lệ hay khơng Một cookie hết hạn, client khơng gửi tới web server điều xác định GMT Nếu ngày hết hạn khơng xác định, client giải phóng cookie trình duyệt bị đóng Thơng tin đường dẫn xác định đường dẫn web server để cookie hợp lệ Nếu thơng tin đường dẫn cookie URL yêu cầu không thỏa, client không gửi cookie Thông tin tên miền xác định tên miền cookie có giá trị Chúng ta hạn chế web server đến máy chủ cụ thể (ví dụ: " edu.vn"), tên miền hồn tồn (ví dụ: "codienhanoi.edu.vn".; Lưu ý dấu chấm (.)) Điều cho phép cookie chia sẻ nhiều máy chủ Ví dụ, trang web lớn sử dụng hostnames www1.site.com, www2.site.com, vv Nếu thông tin tên miền thiết lập để " site.com", Cookie truy cập từ tất host Nếu thơng số an tồn kích hoạt, cookie gửi kênh an toàn (tức qua giao thức HTTPS) Một kênh an tồn khơng thể đọc bên thứ ba, đó, liệu bị đánh cắp Nếu tham số không thiết lập, cookie gửi qua tất kênh, bao gồm kênh an toàn Mặc định cho tham số là: Tên tham số Giá trị mặc định Path “/” (Tất đường dẫn server) Domain Tên miền server để thiết lập cookie Expire information Cho đến đóng trình duyệt Secure Vơ hiệu hóa (disable) 2.3 Cookie PHP Cookie hỗ trợ PHP, người lập trình PHP lấy đầy đủ tính công nghệ Đọc cookie PHP đơn giản truy cập biến Trong lúc bắt đầu kịch chúng ta, cookie tự động tạo biến biến tồn cục.Ví dụ, thiết lập cookie có tên username với nội dung hieulv68, biến $username bao gồm “hieulv68” Chú ý cookie biến dẫn xuất sẵn sàng client chấp nhận cookie gửi lại cho server 2.4 Khai báo tạo cookie Chúng ta bắt đầu với ví dụ đơn giản nơi mà muốn đếm khách ghé thăm xem site Để làm điều này, sử dụng cookie có tên “count” để chứa số người ghé thăm PHP tự động làm có hiệu lực biến $count vào kịch cookie gửi bới hành động người dùng (Trình duyệt) Chúng ta sử dụng hàm setcookie() để gửi yêu cầu tới trình duyệt để thiết lập cookie Để làm điều này, trước tiên bạn khai báo trang them.php, khai báo đoạn javascript để kiểm tra liệu nhập sau: function checkInput() { if (document.frmPHP.txtID.value=="") { alert("Invalid ID, Please enter ID"); document.frmPHP.txtID.focus(); return false; } if (document.frmPHP.txtName.value=="") { alert("Please enter Name"); document.frmPHP.txtName.focus(); return false; } return true; } Kế đến khai báo thể form hai thẻ input lại text yêu cầu người sử dụng nhập ID Name sau: Please enter ID and Name ID: Name: Lưu ý rằng, bạn khai báo số ký tự lớn cho phép nhập với kích thước khai báo sở liệu ứng với thuộc tính maxlength Khi người sử dụng nhập hai giá trị nhấn nút submit, trang đựơc triệu gọi Trang lấy giá trị nhập cách sử dụng biến form hay $_POST Đối với trường hợp sử dụng biến form trang doinsert.php ::Welcome to PHP and mySQL Them mau tin
- Xem thêm -

Xem thêm: Bài giảng PHP và MyQL chương 5 , Bài giảng PHP và MyQL chương 5 , 1 Truyền dữ liệu thông qua phương thức GET, 4 Khai báo và tạo cookie, 10 Giới hạn phạm vi của cookie, 2 Định nghĩa dữ liệu, 4 Tạo một cơ sở dự liệu MySQL, 5 Các bước truy cập cơ sở dự liệu MySQL trong PHP, 6 Một số hàm hữu ích, 8 Cập nhật mẩu tin, 3 Phân trang là gì?

Gợi ý tài liệu liên quan cho bạn

Nhận lời giải ngay chưa đến 10 phút Đăng bài tập ngay