Danh mục tài liệu

Lập trình web với PHP - p23

Số trang: 6      Loại file: pdf      Dung lượng: 155.25 KB      Lượt xem: 22      Lượt tải: 0    
Xem trước 2 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Chương 5 : NHỮNG THÀNH PHẦN CỦA FORM: CHO PHÉP NGƯỜI DÙNG LÀM VIỆC VỚI DỮ LIỆUTập lệnh khungKhung ở dây là tập lệnh form4.php. Tất cả nó quay xung quanh việc sử dụng cấu trúc switch case. Nó bắt đầu với việc định nghĩa hàm cho việc hiển thị trình biên dịch(cái mà chứa hiển thị củẩmng toàn cục $_GET ).Trong thực tế form sử dụng phương thức POST và vì vậy truyền thông tin đến mảng $_POST, phần nội dung chuyển đổi của trang sẽ qua chuổi truy vấn của mảng $GET...
Nội dung trích xuất từ tài liệu:
Lập trình web với PHP - p23 Chương 5 : NHỮNG THÀNH PHẦN CỦA FORM: CHO PHÉP NGƯỜI DÙNG LÀM VIỆC VỚI DỮ LIỆU Trong ứng dụng Web, người sử dụng nhập nội dung, nhấn submitđể sử lý. Một tiến trình thì không được hoàn thành bởi lệnh PHP, vì thếmã lệnh yêu cầu phải “thông minh”. HTML sẽ gởi đến một vị trí đặc biệt và xử lý vì khi bạn điền trôngtin vào form, để biết một địa chỉ email, mail,… bạn cần một phương tiệnđể đọc nội dung. Form trong HTML thì đơn giản hơn, nó chỉ vị trí và cách thức gửinhư thế nào. Tại điểm này PHP được ứng dụng hơn. Tập lệnh PHP nhậndữ liệu từ form và sử dụng nó để hoàn thành hoạt động, như cập nhậtnhững nội dung của cơ sở dữ liệu, gửi một email, định dạng dữ liệu vàhơn thế nữa. PHP sử dụng một tập đơn giản mà mạnh, một sự kết hợp, cung cấpphương tiện để làm mọi thứ ảo khi chúng ta cần. Trong chương này bạn bắt đầu xây dựng một ứng dụng đơn giảncho phép bạn thêm, bớt, xóa thành phần của dữ liệu. Chúng ta sẽ đượcđến với PHP/MySQL như: - Tạo những form sử dụng nút, hộp soạn thảo và những thành phần khác. - Tạo tập lệnh PHP để xử lý những form HTML. - Nhận dữ liệu từ hai biến chính là: $_POST và $_GET. - Qua thông tin ẩn để xử lý tập lệnh form với những điều khiển form ẩn và một chuỗi truy vấn URL. Tập lệnh khung Khung ở dây là tập lệnh form4.php. Tất cả nó quay xungquanh việc sử dụng cấu trúc switch case. Nó bắt đầu với việcđịnh nghĩa hàm cho việc hiển thị trình biên dịch(cái màchứa hiển thị củẩmng toàn cục $_GET ). Trong thực tế form sử dụng phương thức POST và vìvậy truyền thông tin đến mảng $_POST, phần nội dungchuyển đổi của trang sẽ qua chuổi truy vấn của mảng $GET Mỗi bước trong quá trình xây dựng thì được hướng dẫnbởi giá trị chỉ mục $GET[„bước‟]. Nó chứa thông tin quaphần ?step=1 của URL. Mỗi giá trị của tham số GET có một tập lệnh đặc biệtkèm theo. Tham số này cho tập lệnh chính(index.php) nơimà một nhánh tiến trình dữ liệu được nhận. Câu trả lời mặc định Điều gì sẽ xảy ra khi gọi trang đầu tiên và bước tham sốURL không được thiết lặp? tập lệnh đánh giá điều kiệnswitch và tìm các trường hợp.Nếu không có sẽ thực thi mặcđịnh. switch ($_GET[„step‟]) { ... default: require(„startform.php‟); break; } Hàm require() lấy nội dung của file lý thuyết kể cả tậplệnh phiên dịch cùng lúc. Những khác biệt của hàmrequere() với hàm include() là nó khởi tạo một lỗi lớn thayvì một cảnh báo nếu file không tìm thấy. Trong ví dụ này,tập lệnh startform.php sẽ ít quy tụ trong hàm, vì thế mà bạnmuốn biết nếu không tìm thấy file. Thêm mục con Bạn cần hai form khác nhau để thêm vào mục con, vì thếcần nhánh thứ hai để quyết định form hiển thị. Bây giờ chúng ta gặp phải một phần lệnh mà có một ítmưu mẹo. Danh sách giá trị mục con sử dụng lưu trữ 2 giátrị thay vì một. Cách này dùng dấu phân cách và đưa giá trịexplode vào mảng, cập nhật phần bạn cần.(Hàm explode()lấy mỗi đơn vị văn bản bằng dấu ngăn cách và chèn nó nhưphần tử mới của mảng. Trong trường hợp bạn có 3 kiểu mục(Actors, Directors,and Movies), mỗi kiểu yêu cầu một form. Nhưng bạn muốnmục Actor và mục Director cùng thông tin . Do đó, bạn không cần hai form khác nhau. Bạn làm điềunày bằng việc thêm vào một cấu trúc cây bên trên mụcPerson hay Movie. Dưới Person là Actor và Director . Toànbộ điểm có thể sử dụng mức độ tên của hệ đẳng cấp mới đếntên file và bạn có thể thêm một mức độ mới su đóTrong startform.php bạn có: Actor Chú ý: phần giá trị của kiểu phần tử bao gồm 2 giá trịkhác nhau ngăn cách bởi dấu chấm phẩy(;). Trong form4.php bạn có: ... $type = explode(“:”, $_POST[„type‟]); if ($_POST[„Submit‟] == “Add”) { require($_POST[„Submit‟] . $type[0] . „.php‟); } ... Trong tập lệnh này, bạn lấy lại giá trị kiểu phần tử sửdụng chỉ mục mảng $_POST[„kiểu‟] và sau đó sử dụng hàmexplode() trên nội dung của nó.Hàm explode() thì khá dễ sửdụng. Nó cần chuỗi giới hạn đặc biệt và chuỗi chứa văn bảnđể explode. Ví dụ, bạn có “Person:Actor” như giá trị để explode vàdấu hai chấm (:) như giới hạn. Kết quả của biến $type sẽ làmột mảng chứa một phần của chuỗi cắt tại dấu(;) trong ví dụ Nếu bạn trình bày nó trong định dạng print_r, bạn có: Array ( [0] => Person [1] => Actor ) Mục tiêu của tên file đơn giản được hoàn thành. Bạn có hai tập lệnh Add và một tên: AddPerson.php and AddMovie.php. require($_POST[„Submit‟] . $type[0] . „.php‟);Dòng này tạo tên tự động. ...