bài 5 lập trình php (phần 3) làm việc với dữ liệu của form - giáo trình fpt

27
Bài 5 Lập trình PHP(phần 3) Làm việc với dữ liệu của form

Upload: hoc-lap-trinh-web

Post on 05-Dec-2014

6.543 views

Category:

Documents


104 download

DESCRIPTION

1. Lấy dữ liệu từ form 2. Hiển thị dữ liệu trên trang web

TRANSCRIPT

Page 1: Bài 5 Lập trình PHP (phần 3) Làm việc với dữ liệu của form - Giáo trình FPT

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

Làm việc với dữ liệu của form

Page 2: Bài 5 Lập trình PHP (phần 3) Làm việc với dữ liệu của form - Giáo trình FPT

Làm việc với chuỗi và sốTạo ra chuỗiThêm các ký tự đặc biệt vào chuỗiLàm việc với độ dài chuỗi và chuỗi conTìm kiếm trong chuỗiThay thế một bộ phận trong chuỗiSửa chuỗiChuyển đổi giữa chuỗi và mảng

Làm việc với ngày thángSử dụng nhãn thời gianSử dụng đối tượng

Khởi tạo và sử dụng mảngKhởi tạo và sử dụng mảng & mảng liên kếtLàm việc với hàng đợi và ngăn xếpLàm việc với mảng 2 chiều

Nhắc lại bài cũ

Làm việc với chuỗi và sốTạo ra chuỗiThêm các ký tự đặc biệt vào chuỗiLàm việc với độ dài chuỗi và chuỗi conTìm kiếm trong chuỗiThay thế một bộ phận trong chuỗiSửa chuỗiChuyển đổi giữa chuỗi và mảng

Làm việc với ngày thángSử dụng nhãn thời gianSử dụng đối tượng

Khởi tạo và sử dụng mảngKhởi tạo và sử dụng mảng & mảng liên kếtLàm việc với hàng đợi và ngăn xếpLàm việc với mảng 2 chiều

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

Page 3: Bài 5 Lập trình PHP (phần 3) Làm việc với dữ liệu của form - Giáo trình FPT

Nội dung bài học

1. Lấy dữ liệu từ form

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

2. Hiển thị dữ liệu trên trang web

Page 4: Bài 5 Lập trình PHP (phần 3) Làm việc với dữ liệu của form - Giáo trình FPT

Trong phần này có các nội dung: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

1. Lấy dữ liệu từ form

Trong phần này có các nội dung: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

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

Page 5: Bài 5 Lập trình PHP (phần 3) Làm việc với dữ liệu của form - Giáo trình FPT

Thuộc tính của thẻ HTML input:

Textbox cho phép người dùng nhập dữ liệu vào ôHộp password cho phép người dùng nhập dữ liệu vào ô nhưng dữliệu được mã hóa thành các ký tự đặc biệt

Hidden field cho phép lập trình viênbổ sung thêm cặp tên/giá trị vào form.Người dùng không thấy được hidden field khi vào trang webNếu form sử dụng phương thức GET, dữ liệu cho trường được hiểnthị trong URL

1.1. Nhận dữ liệu từtextbox, password box, hidden field

Thuộc tính của thẻ HTML input:

Textbox cho phép người dùng nhập dữ liệu vào ôHộp password cho phép người dùng nhập dữ liệu vào ô nhưng dữliệu được mã hóa thành các ký tự đặc biệt

Hidden field cho phép lập trình viênbổ sung thêm cặp tên/giá trị vào form.Người dùng không thấy được hidden field khi vào trang webNếu form sử dụng phương thức GET, dữ liệu cho trường được hiểnthị trong URL

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

Page 6: Bài 5 Lập trình PHP (phần 3) Làm việc với dữ liệu của form - Giáo trình FPT

Ví dụ: Mã HTML cho ba kiểu dữ liệu:

Nhận dữ liệu từtextbox, password box, hidden field

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

Page 7: Bài 5 Lập trình PHP (phần 3) Làm việc với dữ liệu của form - Giáo trình FPT

Radio button cho phép người dùng chọn một tùy chọn từ một nhómcác tùy chọn cho trướcThuộc tính thẻ HTML <input> cho radio button:

Nếu không có nút nào trong nhóm radio button được chọn, cặptên/giá trị của nhóm sẽ không được đẩy lên server như một phầndữ liệu của form.Nếu mã PHP đặt thuộc tính checked cho nhiều hơn một nút trongnhóm, trình duyệt sẽ chọn nút cuối cùng khi trang được dựng.

1.2. Lấy dữ liệu từ radio button

Radio button cho phép người dùng chọn một tùy chọn từ một nhómcác tùy chọn cho trướcThuộc tính thẻ HTML <input> cho radio button:

Nếu không có nút nào trong nhóm radio button được chọn, cặptên/giá trị của nhóm sẽ không được đẩy lên server như một phầndữ liệu của form.Nếu mã PHP đặt thuộc tính checked cho nhiều hơn một nút trongnhóm, trình duyệt sẽ chọn nút cuối cùng khi trang được dựng.

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

Page 8: Bài 5 Lập trình PHP (phần 3) Làm việc với dữ liệu của form - Giáo trình FPT

Ví dụ:

Lấy dữ liệu từ radio button

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

Page 9: Bài 5 Lập trình PHP (phần 3) Làm việc với dữ liệu của form - Giáo trình FPT

Check box cho phép người dùng chọn một tùy chọnThuộc tính của thẻ HTML <input> cho check box:

Hàm isset trả về TRUE nếu check box được chọn và FALSE nếukhông được chọn.

1.3. Lấy dữ liệu từ checkbox

Check box cho phép người dùng chọn một tùy chọnThuộc tính của thẻ HTML <input> cho check box:

Hàm isset trả về TRUE nếu check box được chọn và FALSE nếukhông được chọn.

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

Page 10: Bài 5 Lập trình PHP (phần 3) Làm việc với dữ liệu của form - Giáo trình FPT

Ví dụ:

Lấy dữ liệu từ checkbox

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

Page 11: Bài 5 Lập trình PHP (phần 3) Làm việc với dữ liệu của form - Giáo trình FPT

Nếu tên check box kết thúc bằng ký tự mảng [], PHP sẽ thêm checkbox vào mảng và mảng này được lồng vào mảng toàn cục $_GEThoặc $_POST => Cho phép nhiều giá trị được gửi lên server vớicùng một tênNếu không có check box nào trong mảng được chọn thì tên mảngsẽ không có trong mảng $_GET hay $_POSTVí dụ:

1.4. Lấy dữ liệu từ mảng checkbox

Nếu tên check box kết thúc bằng ký tự mảng [], PHP sẽ thêm checkbox vào mảng và mảng này được lồng vào mảng toàn cục $_GEThoặc $_POST => Cho phép nhiều giá trị được gửi lên server vớicùng một tênNếu không có check box nào trong mảng được chọn thì tên mảngsẽ không có trong mảng $_GET hay $_POSTVí dụ:

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

Page 12: Bài 5 Lập trình PHP (phần 3) Làm việc với dữ liệu của form - Giáo trình FPT

Lấy dữ liệu từ mảng checkbox

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

Page 13: Bài 5 Lập trình PHP (phần 3) Làm việc với dữ liệu của form - Giáo trình FPT

Dropdown list (danh sách thả xuống) cho phép người dùng chọnmột tùy chọn trong nhóm các tùy chọnNếu thuộc tính selected không được viết thì tùy chọn đầu tiên trongdanh sách sẽ mặc định được chọnThuộc tính thẻ HTML <select> của dropdown list:

Thuộc tính thẻ HTML <option>:

1.5. Lấy dữ liệu từ dropdown list

Dropdown list (danh sách thả xuống) cho phép người dùng chọnmột tùy chọn trong nhóm các tùy chọnNếu thuộc tính selected không được viết thì tùy chọn đầu tiên trongdanh sách sẽ mặc định được chọnThuộc tính thẻ HTML <select> của dropdown list:

Thuộc tính thẻ HTML <option>:

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

Page 14: Bài 5 Lập trình PHP (phần 3) Làm việc với dữ liệu của form - Giáo trình FPT

Ví dụ:

Lấy dữ liệu từ dropdown list

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

Page 15: Bài 5 Lập trình PHP (phần 3) Làm việc với dữ liệu của form - Giáo trình FPT

Listbox(hộp danh sách) cho phép người dùng không chọn hoặc chọnnhiều từ danh sách tùy chọnNếu danh sách cho phép đa chọn, tên của danh sách phải kết thúcbằng ký tự mảng []Thuộc tính thẻ HTML <option>:

Ví dụ:

1.6. Lấy dữ liệu từ listbox

Listbox(hộp danh sách) cho phép người dùng không chọn hoặc chọnnhiều từ danh sách tùy chọnNếu danh sách cho phép đa chọn, tên của danh sách phải kết thúcbằng ký tự mảng []Thuộc tính thẻ HTML <option>:

Ví dụ:

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

Page 16: Bài 5 Lập trình PHP (phần 3) Làm việc với dữ liệu của form - Giáo trình FPT

Ví dụ:

Lấy dữ liệu từ listbox

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

Page 17: Bài 5 Lập trình PHP (phần 3) Làm việc với dữ liệu của form - Giáo trình FPT

Text area (vùng văn bản) cho phép người dùng nhập nhiều dòngvăn bảnĐể thiết lập văn bản mặc định cho vùng, viết văn bản này giữa cặpthẻ <textarea>Thuộc tính của thẻ HTML <textarea>:

Nếu người dùng nhập liệu đến cuối dòng, vùng văn bản sử dụngxuống dòng mềm để bắt đầu dòng mớiNếu người dùng nhấn phím Enter hoặc Return, vùng văn bản sửdụng xuống dòng cứng để bắt đầu dòngNếu người dùng không nhập ký tự nào, cặp tên/giá trị của vùng vănbản vẫn được gửi lên với giá trị được gán là chuỗi rỗng

1.7. Lấy dữ liệu từ text area

Text area (vùng văn bản) cho phép người dùng nhập nhiều dòngvăn bảnĐể thiết lập văn bản mặc định cho vùng, viết văn bản này giữa cặpthẻ <textarea>Thuộc tính của thẻ HTML <textarea>:

Nếu người dùng nhập liệu đến cuối dòng, vùng văn bản sử dụngxuống dòng mềm để bắt đầu dòng mớiNếu người dùng nhấn phím Enter hoặc Return, vùng văn bản sửdụng xuống dòng cứng để bắt đầu dòngNếu người dùng không nhập ký tự nào, cặp tên/giá trị của vùng vănbản vẫn được gửi lên với giá trị được gán là chuỗi rỗng

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

Page 18: Bài 5 Lập trình PHP (phần 3) Làm việc với dữ liệu của form - Giáo trình FPT

Ví dụ:

Lấy dữ liệu từ text area

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

Page 19: Bài 5 Lập trình PHP (phần 3) Làm việc với dữ liệu của form - Giáo trình FPT

Trong phần này có các nội dung:2.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

2. Hiển thị dữ liệu trên trang web

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

Page 20: Bài 5 Lập trình PHP (phần 3) Làm việc với dữ liệu của form - Giáo trình FPT

Thực thể ký tự HTML (HTML character entity) cho phép bạn hiển thịcác ký tự đặc biệt trên trang webHàm htmlspecialchars chuyển đổi các ký tự đặc biệt thành thực thểký tựCú pháp của hàm htmlspecialchars:

Tham số của hàm htmlspecialchars:

2.1. Định dạng các ký tự đặc biệt

Thực thể ký tự HTML (HTML character entity) cho phép bạn hiển thịcác ký tự đặc biệt trên trang webHàm htmlspecialchars chuyển đổi các ký tự đặc biệt thành thực thểký tựCú pháp của hàm htmlspecialchars:

Tham số của hàm htmlspecialchars:

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

Page 21: Bài 5 Lập trình PHP (phần 3) Làm việc với dữ liệu của form - Giáo trình FPT

Một số thực thể HTML cơ bản:

Ví dụ:Văn bản do người dùng nhập:

Mã PHP chuyển đổi ký tự đặc biệt sang thực thể ký tự:

Dữ liệu được hiển thị trên trình duyệt:

Định dạng các ký tự đặc biệt

Một số thực thể HTML cơ bản:

Ví dụ:Văn bản do người dùng nhập:

Mã PHP chuyển đổi ký tự đặc biệt sang thực thể ký tự:

Dữ liệu được hiển thị trên trình duyệt:

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

Page 22: Bài 5 Lập trình PHP (phần 3) Làm việc với dữ liệu của form - Giáo trình FPT

Hàm nl2br chuyển đổi ký tự dòng mới trong chuỗi thành thẻ HTML<br>. Hàm này cho phép hiển thị ngắt dòng HTML trên trang webCú pháp của hàm nl2br:

Tham số của hàm nl2br:

2.2. Định dạng ngắt dòng

Hàm nl2br chuyển đổi ký tự dòng mới trong chuỗi thành thẻ HTML<br>. Hàm này cho phép hiển thị ngắt dòng HTML trên trang webCú pháp của hàm nl2br:

Tham số của hàm nl2br:

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

Page 23: Bài 5 Lập trình PHP (phần 3) Làm việc với dữ liệu của form - Giáo trình FPT

Ví dụ:Văn bản được nhập vào vùng văn bản:

Mã PHP chuyển đổi ký tự ngắt dòng thành thẻ ngắt dòng HTML:

Dữ liệu hiển thị trên trình duyệt:

Định dạng ngắt dòng

Ví dụ:Văn bản được nhập vào vùng văn bản:

Mã PHP chuyển đổi ký tự ngắt dòng thành thẻ ngắt dòng HTML:

Dữ liệu hiển thị trên trình duyệt:

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

Page 24: Bài 5 Lập trình PHP (phần 3) Làm việc với dữ liệu của form - Giáo trình FPT

Lệnh echo và print gửi dữ liệu kiểu chuỗi ra trang web. Các ký tựkhông phải chuỗi sẽ được chuyển thành chuỗiLệnh echo có thể chấp nhận nhiều giá trị kiểu chuỗi, trong khi lệnhprint chỉ chấp nhận một giá trịNgoặc đơn là ký tự tùy chọn cho cả lệnh echo và print. Để in ranhiều giá trị với lệnh echo thì bỏ ngoặc đơn điLệnh echo không trả về giá trị và không thể là thành phần cấu tạonên biểu thức. Lệnh print trả về 1 và có thể dùng như một thànhphần của biểu thứcLệnh echo và print không phải là hàm mà là bộ phận của tập địnhnghĩa ngôn ngữ PHP

2.3. Hiển thị dữ liệuvới câu lệnh echo và print

Lệnh echo và print gửi dữ liệu kiểu chuỗi ra trang web. Các ký tựkhông phải chuỗi sẽ được chuyển thành chuỗiLệnh echo có thể chấp nhận nhiều giá trị kiểu chuỗi, trong khi lệnhprint chỉ chấp nhận một giá trịNgoặc đơn là ký tự tùy chọn cho cả lệnh echo và print. Để in ranhiều giá trị với lệnh echo thì bỏ ngoặc đơn điLệnh echo không trả về giá trị và không thể là thành phần cấu tạonên biểu thức. Lệnh print trả về 1 và có thể dùng như một thànhphần của biểu thứcLệnh echo và print không phải là hàm mà là bộ phận của tập địnhnghĩa ngôn ngữ PHP

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

Page 25: Bài 5 Lập trình PHP (phần 3) Làm việc với dữ liệu của form - Giáo trình FPT

Cú pháp lệnh echo:

Ví dụ:

Cú pháp lệnh print:

Ví dụ:

Hiển thị dữ liệuvới câu lệnh echo và print

Cú pháp lệnh echo:

Ví dụ:

Cú pháp lệnh print:

Ví dụ:

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

Page 26: Bài 5 Lập trình PHP (phần 3) Làm việc với dữ liệu của form - Giáo trình FPT

Dữ liệu nhập vào các điều khiển trên form được gửi lên server dướidạng chuỗi trong một mảng các cặp tên/giá trịText box được dùng để lấy các dữ liệu đơn giảnPassword box lấy các dữ liệu nhạy cảm và được hiển thị bằng các kýtự đặc biệtHidden field được dùng để truyền những dữ liệu không do ngườidùng nhập lên máy chủRadio button cho phép người dùng chọn một trong số các tùy chọn,ngược lại check box cho phép chọn nhiều tùy chọn khác nhau.Để lấy dữ liệu từ nhiều check box liên quan thì thiết lập sao cho dữliệu được trả về trong mảng

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

Dữ liệu nhập vào các điều khiển trên form được gửi lên server dướidạng chuỗi trong một mảng các cặp tên/giá trịText box được dùng để lấy các dữ liệu đơn giảnPassword box lấy các dữ liệu nhạy cảm và được hiển thị bằng các kýtự đặc biệtHidden field được dùng để truyền những dữ liệu không do ngườidùng nhập lên máy chủRadio button cho phép người dùng chọn một trong số các tùy chọn,ngược lại check box cho phép chọn nhiều tùy chọn khác nhau.Để lấy dữ liệu từ nhiều check box liên quan thì thiết lập sao cho dữliệu được trả về trong mảng

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

Page 27: Bài 5 Lập trình PHP (phần 3) Làm việc với dữ liệu của form - Giáo trình FPT

Dropdown list cho phép người dùng chọn một tùy chọn từ nhóm tùychọn. Trong khi đó, list box cho phép chọn một hoặc nhiều tùy chọnText area cho phép người dùng nhập văn bản trên nhiều dòng. Vănbản có thể chứa xuống dòng mềm và xuống dòng cứngSử dụng hàm htmlspecialchars để kiểm soát cách hiển thị các ký tựđặc biệt do người dùng nhập trên trang web.Dùng hàm nl2br để chuyển ký tự xuống dòng theo định dạng HTMLSử dụng lệnh PHP echo hoặc print để gửi dữ liệu ra trình duyệt

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

Dropdown list cho phép người dùng chọn một tùy chọn từ nhóm tùychọn. Trong khi đó, list box cho phép chọn một hoặc nhiều tùy chọnText area cho phép người dùng nhập văn bản trên nhiều dòng. Vănbản có thể chứa xuống dòng mềm và xuống dòng cứngSử dụng hàm htmlspecialchars để kiểm soát cách hiển thị các ký tựđặc biệt do người dùng nhập trên trang web.Dùng hàm nl2br để chuyển ký tự xuống dòng theo định dạng HTMLSử dụng lệnh PHP echo hoặc print để gửi dữ liệu ra trình duyệt

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