PHP nếu nhấp vào nút

if [$_SERVER['REQUEST_METHOD'] === 'POST'] {
    // Something posted

    if [isset[$_POST['btnDelete']]] {
        // btnDelete
    } else {
        // Assume btnSubmit
    }
}


Có bất kỳ ví dụ mã còn lại?

Các ví dụ mã mới trong danh mục PHP

Chúng tôi có thể gặp trường hợp khi chúng tôi có nhiều nút gửi và chúng tôi muốn phát hiện nút nào được nhấp. Trong bài viết này, chúng ta sẽ xem cách phát hiện nút gửi nào được nhấp khi một biểu mẫu được gửi bằng ngôn ngữ PHP

Hàm PHP isset[] được sử dụng để kiểm tra xem một biến có được đặt hay không. Hàm isset[] trả về giá trị boolean [true hoặc false]. Vì vậy, chúng tôi có thể phát hiện lần nhấp vào nút gửi bằng hàm PHP isset[]

Khi nút gửi được nhấp qua nút chuột hoặc nút nhập trên bàn phím, trình duyệt sẽ gửi tên và giá trị của nút một cách an toàn khi phương thức POST được sử dụng

Hãy gán một tên duy nhất cho mỗi nút gửi, nếu bạn sử dụng các tên giống nhau thì bạn sẽ nhận được kết quả không hợp lệ

Biểu mẫu HTML là


Bây giờ chúng ta đã gán các tên duy nhất cho mỗi đầu vào, bây giờ chúng ta cần viết một số mã PHP

Mã PHP sẽ trông như thế này

Phần “else” sẽ xử lý các yêu cầu không đến từ biểu mẫu. Rất nên áp dụng bảo mật và vệ sinh trên các biểu mẫu để ngăn chặn kẻ tấn công. Cách thực hành tốt là luôn có một phần khác cho mỗi câu lệnh "if" để xử lý các ngoại lệ

Khi một yêu cầu không hợp lệ được gửi qua biểu mẫu, bộ điều khiển biểu mẫu sẽ xử lý lỗi. Bằng cách này, bạn có thể áp dụng bảo mật một cấp trên biểu mẫu của mình, bảo mật này sẽ chỉ chấp nhận yêu cầu thực tế và các yêu cầu không hợp lệ sẽ bị loại bỏ

Trong phần trước, bạn đã biết cách lấy văn bản từ hộp văn bản khi nhấp vào nút Gửi trên biểu mẫu. Tuy nhiên, khi bạn tải trang lần đầu, văn bản vẫn hiển thị

Lý do tại sao văn bản hiển thị khi trang được tải lần đầu tiên là do tập lệnh thực thi cho dù nút có được nhấp hay không. Đây là vấn đề bạn gặp phải khi tập lệnh PHP nằm trên cùng một trang với HTML và đang được gửi tới chính nó trong thuộc tính ACTION

Để giải quyết vấn đề này, bạn có thể thực hiện kiểm tra đơn giản bằng cách sử dụng Câu lệnh IF khác. Những gì bạn làm là kiểm tra xem nút Gửi đã được nhấp chưa. Nếu đúng như vậy, thì hãy chạy mã của bạn. Để kiểm tra xem nút gửi đã được nhấp chưa, hãy sử dụng nút này

nếu [ isset[ $_POST['Submit1'] ] ] { }

Bây giờ có vẻ hơi lộn xộn. Nhưng nó thực sự bao gồm ba phần

if [ ] { }
isset[ ]
$_POST['Submit1']

Bạn biết về câu lệnh if. Nhưng ở giữa các dấu ngoặc tròn, chúng ta có isset[]. Đây là một chức năng sẵn có để kiểm tra xem một biến đã được đặt hay chưa. Ở giữa các dấu ngoặc tròn, bạn gõ những gì bạn muốn isset[ ] để kiểm tra. Đối với chúng tôi, đây là $_POST['Submit']. Nếu người dùng vừa làm mới trang, thì sẽ không có giá trị nào được đặt cho nút Gửi. Nếu người dùng đã nhấp vào nút Gửi thì PHP sẽ tự động trả về một giá trị. Thay đổi tập lệnh của bạn từ trang trước sang trang sau và dùng thử

if [isset[$_POST['Submit1']]] {

$username = $_POST['username'];

if [$username == "letmein"] {

print ["Chào mừng trở lại, bạn. "];

}
khác {

print["Bạn chưa phải là thành viên của trang này"];

}

}

Ghi lại vị trí của tất cả các dấu ngoặc tròn, vuông và quăn lộn xộn đó. Bỏ lỡ một lần và bạn sẽ gặp lỗi

Đưa ra một tài liệu chứa mã HTML và PHP và nhiệm vụ là gọi hàm PHP sau khi nhấp vào nút. Có nhiều phương pháp khác nhau để giải quyết vấn đề này. Ngoài ra, ngoài việc thực hiện việc này bằng cách nhấp vào nút, một hàm PHP có thể được gọi bằng Ajax, JavaScript và JQuery. Nhưng bài viết này chủ yếu tập trung vào cách tiếp cận theo hướng nút gọi Hàm PHP.  

Gọi một hàm PHP bằng nút HTML. Tạo tài liệu biểu mẫu HTML có chứa nút HTML. Khi nút được nhấp, phương thức POST được gọi. Phương thức POST mô tả cách gửi dữ liệu đến máy chủ. Sau khi nhấp vào nút, hàm array_key_exists[] được gọi.  

chương trình 1.  

html





0

Chủ Đề