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ông tin 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ửi như thế nào.
Tại điểm này PHP được ứng dụng hơn. Tập lệnh PHP nhận dữ liệu từ form và sử dụng nó
để hoàn thành hoạt động, như cập nhật nhữ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ấp phươ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ản cho 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.
Form đầu tiên
Bắt đầu là một form đơn giản chỉ có vùng soạn thảo và nút submit, tập lệnh xử lý sẽ
hiển thị giá trị nhập vào vùng soạn thảo
Ví dụ: Trong bài tập này bạn sẽ điền tên vào form. Đây là một biến đơn giản trong
chương trình “Hello Word”.
1/Mở trình soạn thảo nhập đoạn mã sau và lưu với tên form1.html
<html>
<head>
<?php
echo "Hello " . $_POST['Name'];
?>
<pre>
DEBUG :
<?php
print_r($_POST);
?>
</pre>
</body>
</html>
3/Mở trình duyệt với file form1.html sẽ cho kết quả như Hình 5.1.1 Hình 5.1
Nhập vào khung Name nội dung bất kỳ(ví dụ Test) và click nút Submit bạn
sẽ thấy kết quả như sau:
Hello Test
DEBUG :
Array
(
[Name] => Test
[SUBMIT] => Submit
)
Cách thức hoạt động :
Để hiểu về cách thức hoạt động, chúng ta phải tìm hiểu về những thành phần của
form và vài hàm PHP mới.
Thành phần form http://localhost/bar.php
Foo.php
<form action = “bar.php” method = “POST”>
<input type = “text” name = “movie_name”>
</form>
Bar.php
The movie is called<?=$_POST[“movie_name”]?>.
Phương thức GET lấy dữ liệu từ trường form, mã hóa nó, và thêm nó để gửi
tới URL như trình bày dưới đây:
http://localhost/formprocess1.php?field1=valuea&field2=value%20b
Bạn có thể thấy, tên trường và giá trị của chúng thì dễ dàng đọc trong tập lệnh
URL. Những tham số của tập lệnh trong URL cho phép người dùng có thể thay đổi,
điều khiển chúng. Điều này có thể dẫn đến lỗi trong quá trình xử lý tập lệnh hoặc
cập nhật dữ liệu( không phải là lần cập nhật đầu tiên.)
Phần tử nhập (INPUT)
Phần tử HTML mới thứ hai là INPUT. Đây là hình thức cơ bản và có thể sử
dụng trong nhiều phương pháp khác nhau để tập hợp nhiều loại thông tin khác nhau.
Trong trường hợp này bạn có thể sử dụng kiểu INPUT khác nhau: kiểu văn
bản(text) và kiểu submit.
Kiểu INPUT văn bản:
<input type=”text” name=”Name”>
Kiểu INPUT văn bản là một tiêu chuẩn, hộp văn bản chỉ có những dòng
đơn. Nó sẽ cập nhật nội dugn thông qua cú pháp:
<?php
echo $_POST[„Name‟]; // sẽ hiển thị một kiểu giá trị
[Name] => test
[SUBMIT] => Submit
)
Khi nhận form submit, PHP đặt mảng POST với dữ liệu mà form gửi tới. Như
với bất kì mảng nào, bạn có thể cập nhật chính xác bất kì danh mục nào bằng tên.
Trong ví dụ này, bạn có thể thấy rõ danh mục tên chứa giá trị test. Cách này làm
việc với tất cả các form, ngay cả với những form phức tạp nhất.
Chúng ta hãy đi tiếp để thấy việc sử dụng những phần tử HTML trong suốt
quá trình nhập form với giao diện người dùng.