Tải bản đầy đủ (.pdf) (10 trang)

biến form và hai phương thức Shttp-post-vars và Shttp-get-vá của PHP

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (247.45 KB, 10 trang )

COMPUTER LEARNING CENTER WWW.HUUKHANG.COM

Môn học: PHP

Bài 4

Bài học này chúng ta sẽ làm quen với biến form và hai phương
thức
$HTTP_POST_VARS

$HTTP_GET_VARS
của PHP
:

9 Biến form.
9 Phương thức $HTTP_GET_VARS
9 Phương thức $HTTP_POST_VARS



BIẾN FORM

Biến form trong PHP được biết đến như một loại biến, thay vì khai báo thì biến đó
chính là tên của thẻ nhập liệu trong trang submit hay tham số trên querystring.
1.
1.1. Biến form từ form được submit với phương thức POST
Trong trang bạn submit đến, nếu khai báo tên của thẻ nằm trong thẻ form có tên là
xyz thì biến form được đònh nghóa là $xyz.
Chẳng hạn, bạn khai báo báo thẻ form trong trang submit.php như ví dụ 4-1.
Ví dụ 4-1: Khai báo thẻ form


...
<form action=ex1-1.php method=post>
<tr>
<td>Name</td><td>:<input type=text name=fullname></td>
</tr>
<tr><td>Gender</td>
<td>:<input type=radio value=M name=gender> Male
<input type=radio value=F name=gender> Female</td>
</tr>
<tr><td>&nbsp</td>
<td><input type=submit value=Submit></td>
</tr>
</form>
...

Khi người sử dụng nhập giá trò vào phần Name và chọn giới tính Male hay Female
như hình 4-1, nếu nhấn nút submit thì trang ex1-1.php sẽ triệu gọi, trong trang này
bạn có thể lấy giá trò nhập từ trang ex1.php bằng cách sử dụng biến form như ví dụ
4-1-1.
Ví dụ 4-2: Dùng biến form

<HTML>
<HEAD>
<TITLE>::Welcome to PHP</TITLE>
</HEAD>
<BODY>
<h4>Form variable</h4>
<table>
<tr><td>Name</td>
<td>

:<?=$fullname?>
Giáo viên: Phạm Hữu Khang
COMPUTER LEARNING CENTER WWW.HUUKHANG.COM

</td></tr>
<tr><td>Gender</td>
<td>
:<?=$gender?>
</td></tr>
</table>
</BODY>
</HTML>

Trong đó, $fullname và $gender là tên của hai thẻ input trong trang ex1.php, trong
trường hợp này chúng ta sử dụng phương thức POST cho form.

Hình 4-1: Nhập liệu

Kết quả trả về như hình 4-1-1.

Hình 4-1-1: Kết quả lấy từ trang submit bằng biến form
Giáo viên: Phạm Hữu Khang
COMPUTER LEARNING CENTER WWW.HUUKHANG.COM

1.2. Biến form từ form được submit với phương thức GET
Nếu bạn sử dụng phương thức GET trong thẻ form, bạn có thể lấy giá trò của các
tham số trên chuỗi QueryString bằng biến form. Ví dụ khai báo thẻ form có hai tuỳ
chọn như ví dụ 4-2 với phương thức GET trong thẻ form.
Ví dụ 4-2: Khai báo thẻ form


...
<form action=ex2-1.php method=get>
<tr><td>Province</td>
<td>
:<select name=province>
<option value=HAN>Ha Noi</option>
<option value=HCM>Ho Chi Minh</option>
<option value=HUE>Hue</option>
</select>
</td></tr>
<tr><td>Industry</td>
<td>
:<select name=industry multiple>
<option value=AUT>Automobile</option>
<option value=FOO>Foods</option>
<option value=ENG>Enginering</option>
<option value=GAR>Garment</option>
</select>
</td></tr>
<tr><td>&nbsp</td>
<td><input type=submit value=Submit></td></tr>
</form>
...

Khi triệu gọi trang ex2.php trên trình duyệt, người sử dụng chọn giá trò trong hai
tuỳ chọn Province và Industry như hình 4-2.


Hình 4-2: Phương thức GET
Giáo viên: Phạm Hữu Khang

COMPUTER LEARNING CENTER WWW.HUUKHANG.COM

Nếu nhấn Submit thì hai giá trò chọn sẽ được truyền lên trên QueryString với hai
tham số là tên của thẻ select. Ví dụ trong trường hợp này kết quả trả về như hình 4-
2-1.



Hình 4-2-1: Biến form với phương thức GET
Trong đó, hai tham số và giá trò tương ứng là ex2-
1.php?province=HAN&industry=FOO, bằng cách sử dụng biến form bạn có thể lấy
được giá trò này như ví dụ 4-2-1.
Ví dụ 4-2-1: Khai báo thẻ form

<HTML>
<HEAD>
<TITLE>::Welcome to PHP</TITLE>
</HEAD>
<BODY>
<h4>Form variable</h4>
<table>
<tr><td>Province</td>
<td>
:<?=$province?>
</td></tr>
<tr><td>Industry</td>
<td>
:<?=$industry?>
</td></tr>
</table>

</BODY>
</HTML>

Đối với trường hợp bạn không sử dụng thẻ form như hai trường hợp trên, chúng ta
cũng có thể lấy giá trò từ chuỗi QueryString bằng biến form. Chẳng hạn, bạn khai
báo trang chop phép người sử dụng chọn ký tự để liệt kê danh sách khách hàng theo
ký tự đó như hình 4-3.
Giáo viên: Phạm Hữu Khang
COMPUTER LEARNING CENTER WWW.HUUKHANG.COM




Hình 4-3: Chọn ký tự
Bằng cách khai báo các thẻ <a> bạn đònh nghóa 24 ký tự như hình trên với tham số
al có giá trò tương ứng:

<tr><td>
<a href="ex3.php?al=A">A</a> |
<a href="ex3.php?al=B">B</a> |
<a href="ex3.php?al=C">C</a> |
<a href="ex3.php?al=D">D</a> |
<a href="ex3.php?al=E">E</a> |
<a href="ex3.php?al=">All</a>
</td></tr>

Khi người sử dụng chọn một ký tự thì sử dụng biến form là tên của tham số (al), bạn
có thể lấy được giá trò của ký tự đang chọn:

<tr><td>Select:<?=$al?></td></tr>


Tuy nhiên, lấn đầu tiên triệu gọi trang này mà không có tham số trên QueryString,
khai báo biến form sẽ phun ra lỗi như hình 4-3-1.
Để tránh trường hợp này, bạn sử dụng hàm isset để kiểm tra biến tồn tại hay
không, nếu tồn tại thì bạn sử dụng biến form này. Ví dụ đối với trường hợp này
chúng ta khai báo như ví dụ 4-3.
Ví dụ 4-3: Sử dụng biến form

<HTML>
<HEAD>
<TITLE>::Welcome to PHP</TITLE>
</HEAD>
<BODY>
<h4>Form variable</h4>
<table>
<tr><td>List by Alphabet</td></tr>
<tr><td>
Giáo viên: Phạm Hữu Khang

×