PHP xử lý form

PHP xử lý form

- Trong tất cả ví dụ bên dưới sẽ dùng phương thức _POST với action ở trang hiện tại: <form action="" method="post"> (action không giá trị sẽ mặc định submit xử lý ở trang hiện tại, hoặc có thể thay thế bằng action="php_form_handing.php" cũng cho kết quả tương tự).

Nút submit sẽ dùng <button type="submit"> (chúng ta cũng có thể dùng <input type="submit"> cũng cho kết quả tương tự).

PHP input type="text"

  • Định nghĩa và cách dùng input xem thêm phần tham khảo.
  • method="get" là gì? nếu chưa rõ thì bạn cần xem lại _POST.
  • if(isset($_POST["giá_trị_name"])) kiểm tra xem $_POST["giá_trị_name"] có tồn tại hay không, nếu không có đoạn kiểm tra này thì khi submit sẽ báo lỗi.

PHP viết:

<form action="" method="post">
    Họ tên: <input type="text" name="fullname" value="">
    <button type="submit">Gửi</button>
</form>
<?php if(isset($_POST["fullname"])) { echo $_POST["fullname"]; } ?>
Họ tên:

Xem ví dụ.

PHP input type="password"

  • Cách xử lý tương tự như input type="text"

PHP viết:

<form action="" method="post">
    Password: <input type="password" name="password" value="">
    <button type="submit">Gửi</button>
</form>
<?php if(isset($_POST["password"])) { echo $_POST["password"]; } ?>
Password:

Xem ví dụ.

PHP input type="checkbox"

  • Cách xử lý tương tự như input type="text"

PHP viết:

<form action="" method="post">
    Đăng ký học:<br>
    HTML <input type="checkbox" name="check_html" value="HTML">, CSS <input type="checkbox" name="check_css" value="CSS"><br>
    <button type="submit">Gửi</button>
</form>
<?php if(isset($_POST["check_html"])) { echo $_POST["check_html"]; } ?>
<?php if(isset($_POST["check_css"])) { echo $_POST["check_css"]; } ?>
Đăng ký học:
HTML , CSS

Đối với mỗi giá trị checkbox ta sẽ kiểm tra sự tồn tại riêng.

Xem ví dụ.

PHP input type="radio"

  • Cách xử lý tương tự như input type="text", tuy nhiên cần chú ý cách đặt tên thuộc tính namevalue.

PHP viết:

<form action="" method="post">
    Giới tính:<br>
    Nam <input type="radio" name="gender" value="Nam">, Nữ <input type="radio" name="gender" value="Nữ"><br>
    <button type="submit">Gửi</button>
</form>
<?php if(isset($_POST["gender"])) { echo $_POST["gender"]; } ?>
Giới tính:
Nam , Nữ

Xem ví dụ.

PHP select option

  • Định nghĩa và cách dùng select option xem thêm phần tham khảo.
  • Cũng xử lý dựa theo thuộc tính name, giá trị được lấy chính là nội dung của option được chọn.

PHP viết:

<form action="" method="post">
    Thành phố: <br>
    <select name="city">
        <option value="Hà Nội">Hà Nội</option>
        <option value="Hồ Chí Minh">Hồ Chí Minh</option>
        <option value="Đà Nẵng">Đà Nẵng</option>
        <option value="Cần Thơ">Cần Thơ</option>
    </select>
    <button type="submit">Gửi</button>
</form>
<?php if(isset($_POST["city"])) { echo $_POST["city"]; } ?>
Thành phố:

Xem ví dụ.

PHP textarea

  • Định nghĩa và cách dùng textarea xem thêm phần tham khảo.
  • Cũng xử lý dựa theo thuộc tính name, giá trị được lấy chính là nội dung textarea.

PHP viết:

<form action="" method="post">
    Tin nhắn<br>
    <textarea cols="30" rows="7" name="message"></textarea><br>
    <button type="submit">Gửi</button>
</form>
<?php if(isset($_POST["message"])) { echo $_POST["message"]; } ?>
Tin nhắn

Xem ví dụ.

PHP form tổng hợp

PHP viết:

<form action="" method="post">
    <p>Họ tên: <input type="text" name="fullname" value=""></p>
    <p>Password: <input type="password" name="password" value=""></p>
    <p>Đăng ký học: HTML <input type="checkbox" name="check_html" value="HTML">, CSS <input type="checkbox" name="check_css" value="CSS"></p>
    <p>Giới tính: Nam <input type="radio" name="gender" value="Nam">, Nữ <input type="radio" name="gender" value="Nữ"></p>
    <p>Thành phố: <select name="city">
        <option value="Hà Nội">Hà Nội</option>
        <option value="Hồ Chí Minh">Hồ Chí Minh</option>
        <option value="Đà Nẵng">Đà Nẵng</option>
        <option value="Cần Thơ">Cần Thơ</option>
    </select></p>
    <p>Tin nhắn:<br>
    <textarea cols="30" rows="7" name="message"></textarea></p>
    <button type="submit">Gửi</button>
</form>

<p>Họ tên: <?php if(isset($_POST["fullname"])) { echo $_POST["fullname"]; } ?></p>
<p>Password: <?php if(isset($_POST["password"])) { echo $_POST["password"]; } ?></p>
<p>Đăng ký học: <?php if(isset($_POST["check_html"])) { echo $_POST["check_html"]; } ?> <?php if(isset($_POST["check_css"])) { echo $_POST["check_css"]; } ?></p>
<p>Giới tính: <?php if(isset($_POST["gender"])) { echo $_POST["gender"]; } ?></p>
<p>Thành phố: <?php if(isset($_POST["city"])) { echo $_POST["city"]; } ?></p>
<p>Tin nhắn: <?php if(isset($_POST["message"])) { echo $_POST["message"]; } ?></p>

Họ tên:

Password:

Đăng ký học: HTML , CSS

Giới tính: Nam , Nữ

Thành phố:

Tin nhắn:

Họ tên:

Password:

Đăng ký học:

Giới tính:

Thành phố:

Tin nhắn:

Xem ví dụ.

Bên trên là cách xử lý dựa trên hàm isset() để kiểm tra các giá trị $_POST có tồn tại hay không, tuy nhiên trong thực tế chúng ta sẽ sử dụng hàm empty() để kiểm tra xem các giá trị $_POST có rỗng hay không, nếu rỗng thì xuất hiện thông báo lỗi, còn không thì cho qua, xem thêm tại: PHP form validation.

Download file ví dụ