Khi lập trình và thiết kế giao diện Web, hẳn là bạn sẽ gặp trường hợp yêu cầu thiết kế nhiều form (biểu mẫu) trong 1 trang. Sau đó, khi người dùng submit từng form thì sẽ lấy đúng dữ liệu của form gửi về server để xử lý. Cách giải quyết tình huống này như sau.
Tạo khác thuộc tính action cho mỗi form
Bạn có thể tạo nhiều form, trong đó mỗi form có thuộc tính action khác nhau. Vì vậy khi đó, người dùng nhấn mỗi form sẽ gửi dữ liệu thì về các trang khác nhau.
<html> <body> <form action="dammio1.php" method="get"> Tên: <input type="text" name="name"><br> E-mail: <input type="text" name="email"><br> <input type="submit"> </form> <form action="dammio2.php" method="get"> Tên: <input type="text" name="name"><br> E-mail: <input type="text" name="email"><br> <input type="submit"> </form> </body> </html>
Bạn có thể thay thế dammio1.php, dammio2.php bằng cách trang .html, .aspx và lấy dữ liệu từ form submit đến các trang này mà bạn muốn. Ví dụ, nội dung dammio1.php để hiển thị thông tin như sau.
<?php if (isset($_GET["name"])) echo $_GET["name"] . '<br />'; if (isset($_GET["email"])) echo $_GET["email"]; ?>
Tạo nhiều nút submit trong cùng 1 form
Bạn có thể tạo nhiều nút submit cùng 1 form, nhưng khi đó hãy thiết lập 1 điều kiện if (switch…case) để dò tìm giá trị nút submit đúng cần thực hiện.
Ví dụ tạo 1 trang index.php (.html) như sau.
<html> <body> <form method="get"> <h2>Ví dụ 2 nút submit 1 form --- dammio.com</h2> Tên: <input type="text" name="name"><br> E-mail: <input type="text" name="email"><br> <input type="submit" name="btnSubmit" id="btnSubmit" value="Action1" /> <input type="submit" name="btnSubmit" id="btnSubmit" value="Action2" /> </form> <?php if (isset($_GET['btnSubmit'])) // Kiểm tra nút có giá trị dữ liệu { if($_GET['btnSubmit'] == 'Action1') { echo 'Đây là nút Submit 1'; //Thực hiện đoạn mã tiếp theo --- dammio.com } if($_GET['btnSubmit'] == 'Action2') { echo "Đây là nút Submit 2"; //Thực hiện đoạn mã tiếp theo } } ?> </body> </html>
Ý tưởng trong bài cũng có thể áp dụng cho ASP.NET. Ngoài ra, tất nhiên là còn nhiều trường hợp và cách xử lý khác. Nếu bạn có ý kiến thắc mắc hoặc gặp trường hợp khó giải quyết, hãy để lại bình luận để nhận tư vấn nhé!
- APA:
Dammio. (2019). Tạo nhiều form, nhiều nút submit trong 1 form bằng PHP. https://www.dammio.com/2019/01/27/tao-nhieu-form-nhieu-nut-submit-trong-1-form-bang-php.
- BibTeX:
@misc{dammio,
author = {Dammio},
title = {Tạo nhiều form, nhiều nút submit trong 1 form bằng PHP},
year = {2019},
url = {https://www.dammio.com/2019/01/27/tao-nhieu-form-nhieu-nut-submit-trong-1-form-bang-php},
urldate = {2025-02-07}
}
Tạo hơn 100 form trong 1 trang có ảnh hưởng xấu gì ko vậy admin