NTM Solutions

Bài đăng nổi bật

🐘 PHP Cơ Bản 8.2 — CẤP ĐỘ TRỨNG🥚

Tự học PHP từ ZERO đến làm web động #laptrinhphpcoban 📘 PHẦN 1 — NHẬP MÔN PHP Bài 00 — Giới thiệu khóa học & cài đặt môi trường PHP là ...

Thứ Tư, 17 tháng 6, 2026

📘Bài 17 — Form HTML + PHP📝

#laptrinhphpcoban

x0

Sau khi học biến, điều kiện, vòng lặp, hàm và mảng, đã đến lúc tạo ra những trang web có thể nhận dữ liệu từ người dùng.

Đây chính là bước đầu tiên để xây dựng:

✅ Form đăng nhập
✅ Form liên hệ
✅ Form đăng ký thành viên
✅ Form tìm kiếm
✅ Form quản trị dữ liệu


📝 Form HTML là gì?

Form là nơi người dùng nhập dữ liệu và gửi về máy chủ PHP xử lý.

Ví dụ:

<form>
    <input type="text">
    <button>Gửi</button>
</form>

🚀 Cấu trúc Form cơ bản

<form method="post" action="">
    <input type="text" name="username">

    <button type="submit">
        Gửi
    </button>
</form>

Ý nghĩa:

Thành phầnChức năng
formKhung chứa dữ liệu
methodCách gửi dữ liệu
actionFile xử lý
inputÔ nhập dữ liệu
buttonNút gửi

📌 Thuộc tính method

Có 2 kiểu gửi dữ liệu phổ biến:

GET

<form method="get">

POST

<form method="post">

🔍 Method GET

GET gửi dữ liệu lên URL.

Ví dụ:

<form method="get">
    <input name="name">

    <button>Gửi</button>
</form>

Nhập:

Nguyen Van A

URL sẽ thành:

localhost/form.php?name=Nguyen+Van+A

PHP nhận dữ liệu:

<?php

echo $_GET['name'];

?>

Kết quả:

Nguyen Van A

🎯 Ưu điểm của GET

✅ Dễ kiểm tra dữ liệu

✅ Có thể bookmark

✅ Có thể chia sẻ URL

Ví dụ:

search.php?keyword=php

⚠️ Nhược điểm của GET

❌ Hiển thị dữ liệu trên URL

❌ Không phù hợp mật khẩu

❌ Giới hạn độ dài

Sai:

login.php?password=123456

📮 Method POST

POST gửi dữ liệu trong phần thân request.

Không hiển thị trên URL.

Ví dụ:

<form method="post">

    <input name="username">

    <button>Gửi</button>

</form>

PHP:

<?php

echo $_POST['username'];

?>

🎯 Ưu điểm của POST

✅ Bảo mật hơn GET

✅ Gửi được dữ liệu lớn

✅ Dùng cho đăng nhập

✅ Dùng cho upload file


📌 So sánh GET và POST

🔢⚙️ GET📮 POST
1️⃣Hiện trên URLKhông hiện URL
2️⃣Dữ liệu nhỏDữ liệu lớn
3️⃣Kém bảo mậtBảo mật hơn
4️⃣Tìm kiếmĐăng nhập
5️⃣Bookmark đượcKhông bookmark

🎯 Thuộc tính action

action xác định file nhận dữ liệu.

Ví dụ:

<form method="post"
      action="save.php">

Khi submit:

save.php

sẽ xử lý dữ liệu.


📌 action cùng file

Thông dụng nhất:

<form method="post" action="">

hoặc:

<form method="post">

Dữ liệu sẽ gửi lại chính file hiện tại.


🚀 Ví dụ hoàn chỉnh

<form method="post">

    <input
        type="text"
        name="fullname">

    <button type="submit">
        Gửi
    </button>

</form>

<?php

if(isset($_POST['fullname']))
{
    echo "Xin chào "
         . $_POST['fullname'];
}

?>

Kết quả:

Xin chào Nguyễn Văn A

📌 isset() là gì?

Kiểm tra dữ liệu có tồn tại hay không.

if(isset($_POST['fullname']))
{
    echo "Đã gửi";
}

Nếu không kiểm tra:

echo $_POST['fullname'];

có thể phát sinh cảnh báo:

Undefined array key

🎯 Form nhiều trường dữ liệu

<form method="post">

    <input
        type="text"
        name="name">

    <input
        type="email"
        name="email">

    <button>
        Gửi
    </button>

</form>

PHP:

<?php

echo $_POST['name'];

echo "<br>";

echo $_POST['email'];

?>

🎯 Form đăng nhập đơn giản

<form method="post">

    <input
        type="text"
        name="user">

    <input
        type="password"
        name="pass">

    <button>
        Đăng nhập
    </button>

</form>

<?php

if(isset($_POST['user']))
{
    echo "User: "
         . $_POST['user'];
}
?>

⚠️ Lưu ý quan trọng

Không bao giờ tin dữ liệu người dùng.

Ví dụ:

$_POST['name']

có thể chứa:

<script>
alert(1)
</script>

Bài tiếp theo sẽ học cách:

✅ Kiểm tra dữ liệu

✅ Loại bỏ khoảng trắng

✅ Chống XSS

✅ Validate form


🧪 Bài tập thực hành

Tạo form gồm:

  • Họ tên

  • Email

  • Tuổi

Khi nhấn Gửi:

Hiển thị:

Họ tên: ...
Email: ...
Tuổi: ...

🏆 Tổng kết

Sau bài học này bạn đã biết:

✅ Tạo form HTML

✅ method GET

✅ method POST

✅ action

✅ $_GET

✅ $_POST

✅ isset()

Ở bài tiếp theo chúng ta sẽ học cách bảo vệ dữ liệu đầu vào bằng Validate Form để tránh lỗi và tăng tính bảo mật cho website.

quay về MỤC LỤC

Không có nhận xét nào:

Đăng nhận xét

Facebook Youtube RSS