Hướng dẫn PHP

TRANG CHỦ PHP Giới thiệu PHP Cài đặt PHP Cú pháp PHP Nhận xét PHP Các biến PHP PHP Echo / Print Các kiểu dữ liệu PHP Chuỗi PHP Số PHP Toán PHP Hằng số PHP Toán tử PHP PHP If ... Else ... Elseif Chuyển đổi PHP Vòng lặp PHP Các hàm PHP Mảng PHP PHP Superglobals PHP RegEx

Biểu mẫu PHP

Xử lý biểu mẫu PHP Xác thực biểu mẫu PHP Yêu cầu biểu mẫu PHP URL biểu mẫu PHP / E-mail Hoàn thành biểu mẫu PHP

PHP nâng cao

Ngày và giờ trong PHP Bao gồm PHP Xử lý tệp PHP Mở / Đọc tệp PHP Tạo / ghi tệp PHP Tải lên tệp PHP Cookie PHP Phiên PHP Bộ lọc PHP Bộ lọc PHP nâng cao Các chức năng gọi lại trong PHP PHP JSON Ngoại lệ PHP

PHP OOP

PHP OOP là gì Các lớp / đối tượng PHP Trình tạo PHP PHP Destructor Công cụ sửa đổi quyền truy cập PHP Kế thừa PHP Hằng số PHP Các lớp trừu tượng trong PHP Giao diện PHP Đặc điểm PHP Phương thức tĩnh trong PHP Thuộc tính tĩnh của PHP Không gian tên PHP Lặp lại PHP

Cơ sở dữ liệu MySQL

Cơ sở dữ liệu MySQL MySQL Connect MySQL Tạo cơ sở dữ liệu MySQL Tạo bảng MySQL Chèn dữ liệu MySQL Nhận ID cuối cùng MySQL Chèn Nhiều MySQL được chuẩn bị Dữ liệu chọn MySQL MySQL ở đâu MySQL Đặt hàng bởi MySQL Xóa dữ liệu Dữ liệu cập nhật MySQL Dữ liệu giới hạn MySQL

PHP XML

Trình phân tích cú pháp XML PHP Trình phân tích cú pháp PHP SimpleXML PHP SimpleXML - Nhận PHP XML Expat DOM XML PHP

PHP - AJAX

Giới thiệu về AJAX AJAX PHP Cơ sở dữ liệu AJAX AJAX XML Tìm kiếm trực tiếp AJAX Cuộc thăm dò ý kiến ​​của AJAX

Ví dụ về PHP

Ví dụ về PHP Trình biên dịch PHP PHP Quiz Bài tập PHP Chứng chỉ PHP

Tham chiếu PHP

Tổng quan về PHP Mảng PHP Lịch PHP Ngày PHP Thư mục PHP Lỗi PHP Ngoại lệ PHP Hệ thống tập tin PHP Bộ lọc PHP FTP PHP PHP JSON Từ khóa PHP PHP Libxml Thư PHP Toán PHP PHP Misc PHP MySQLi Mạng PHP Kiểm soát đầu ra PHP PHP RegEx PHP SimpleXML Luồng PHP Chuỗi PHP Xử lý biến PHP Trình phân tích cú pháp XML PHP PHP Zip Múi giờ PHP

Xử lý biểu mẫu PHP


Các superglobals trong PHP $ _GET và $ _POST được sử dụng để thu thập dữ liệu biểu mẫu.


PHP - Một biểu mẫu HTML đơn giản

Ví dụ bên dưới hiển thị một biểu mẫu HTML đơn giản với hai trường nhập và nút gửi:

Thí dụ

<html>
<body>

<form action="welcome.php" method="post">
Name: <input type="text" name="name"><br>
E-mail: <input type="text" name="email"><br>
<input type="submit">
</form>

</body>
</html>

Khi người dùng điền vào biểu mẫu ở trên và nhấp vào nút gửi, dữ liệu biểu mẫu sẽ được gửi để xử lý tới một tệp PHP có tên "welcome.php". Dữ liệu biểu mẫu được gửi bằng phương thức HTTP POST.

Để hiển thị dữ liệu đã gửi, bạn chỉ cần lặp lại tất cả các biến. "Welcome.php" trông như thế này:

<html>
<body>

Welcome <?php echo $_POST["name"]; ?><br>
Your email address is: <?php echo $_POST["email"]; ?>

</body>
</html>

Đầu ra có thể là một cái gì đó như thế này:

Welcome John
Your email address is [email protected]

Kết quả tương tự cũng có thể đạt được bằng cách sử dụng phương thức HTTP GET:

Thí dụ

<html>
<body>

<form action="welcome_get.php" method="get">
Name: <input type="text" name="name"><br>
E-mail: <input type="text" name="email"><br>
<input type="submit">
</form>

</body>
</html>

và "welcome_get.php" trông như thế này:

<html>
<body>

Welcome <?php echo $_GET["name"]; ?><br>
Your email address is: <?php echo $_GET["email"]; ?>

</body>
</html>

Đoạn mã trên khá đơn giản. Tuy nhiên, điều quan trọng nhất vẫn còn thiếu. Bạn cần xác thực dữ liệu biểu mẫu để bảo vệ tập lệnh của mình khỏi mã độc.

Hãy nghĩ đến sự AN TOÀN khi xử lý các biểu mẫu PHP!

Trang này không chứa bất kỳ xác thực biểu mẫu nào, nó chỉ hiển thị cách bạn có thể gửi và truy xuất dữ liệu biểu mẫu.

Tuy nhiên, các trang tiếp theo sẽ chỉ ra cách xử lý các biểu mẫu PHP có lưu ý đến tính bảo mật! Việc xác nhận đúng cách dữ liệu biểu mẫu là điều quan trọng để bảo vệ biểu mẫu của bạn khỏi tin tặc và những kẻ gửi thư rác!



NHẬN so với ĐĂNG

Cả GET và POST đều tạo ra một mảng (ví dụ: mảng (key1 => value1, key2 => value2, key3 => value3, ...)). Mảng này chứa các cặp khóa / giá trị, trong đó các khóa là tên của các điều khiển biểu mẫu và giá trị là dữ liệu đầu vào từ người dùng.

Cả GET và POST đều được coi là $ _GET và $ _POST. Đây là những superglobals, có nghĩa là chúng luôn có thể truy cập được, bất kể phạm vi - và bạn có thể truy cập chúng từ bất kỳ hàm, lớp hoặc tệp nào mà không cần phải làm bất kỳ điều gì đặc biệt.

$ _GET là một mảng các biến được truyền cho tập lệnh hiện tại thông qua các tham số URL.

$ _POST là một mảng các biến được truyền tới tập lệnh hiện tại thông qua phương thức HTTP POST.


Khi nào sử dụng GET?

Thông tin được gửi từ biểu mẫu với phương thức GET được hiển thị cho mọi người (tất cả các tên biến và giá trị được hiển thị trong URL). GET cũng có giới hạn về số lượng thông tin cần gửi. Giới hạn là khoảng 2000 ký tự. Tuy nhiên, vì các biến được hiển thị trong URL, nên có thể đánh dấu trang. Điều này có thể hữu ích trong một số trường hợp.

GET có thể được sử dụng để gửi dữ liệu không nhạy cảm.

Lưu ý: GET KHÔNG BAO GIỜ được sử dụng để gửi mật khẩu hoặc thông tin nhạy cảm khác!


Khi nào sử dụng POST?

Thông tin được gửi từ một biểu mẫu có phương thức POST là ẩn đối với những người khác (tất cả các tên / giá trị đều được nhúng trong nội dung của yêu cầu HTTP) và không có giới hạn về lượng thông tin cần gửi.

Hơn nữa POST hỗ trợ chức năng nâng cao như hỗ trợ đầu vào nhị phân nhiều phần trong khi tải tệp lên máy chủ.

Tuy nhiên, vì các biến không được hiển thị trong URL nên không thể đánh dấu trang.

Các nhà phát triển thích POST để gửi dữ liệu biểu mẫu.

Tiếp theo, hãy xem cách chúng ta có thể xử lý các biểu mẫu PHP một cách an toàn!


Bài tập PHP

Kiểm tra bản thân với các bài tập

Bài tập:

Nếu biểu mẫu trong phần màu trắng bên dưới được gửi, làm thế nào bạn, trong welcome.php, có thể xuất giá trị từ trường "tên"?

<form action="welcome.php" method="get"> First name: <input type="text" name="fname"> </form>
<html> <body> Welcome <?php echo ; ?> </body> </html>