Menentukan Butang Mana Yang Mencetuskan Penyerahan Borang PHP
Apabila berurusan dengan borang yang mengandungi berbilang butang hantar, adalah penting untuk mengenal pasti butang mana yang diklik apabila borang diserahkan. Berikut ialah penjelasan menyeluruh tentang cara untuk mencapai ini dalam PHP:
Menggunakan pembolehubah $_SERVER['REQUEST_METHOD'] dan $_POST:
Pertimbangkan borang HTML berikut dengan dua butang hantar:
<input type="submit">
Untuk menentukan butang yang telah diklik, anda boleh menggunakan kod PHP berikut:
if ($_SERVER['REQUEST_METHOD'] === 'POST') { // Something posted if (isset($_POST['btnDelete'])) { // btnDelete } else { // Assume btnSubmit } }
Kod ini menyemak sama ada $_SERVER['REQUEST_METHOD'] adalah sama dengan 'POST', menunjukkan bahawa borang telah diserahkan. Ia kemudian menyemak sama ada atribut nama butang hantar yang diklik, seperti btnDelete, terdapat dalam tatasusunan $_POST. Jika ya, butang yang sepadan (btnDelete dalam kes ini) telah diklik. Jika tidak, adalah diandaikan bahawa butang serah pertama (btnSubmit dalam kes ini) telah diklik.
Kepentingan Menganggap Butang Hantar Lalai:
Adalah penting untuk sentiasa menganggap butang hantar lalai. Butang ini ialah butang serah pertama yang muncul dalam kod sumber HTML borang anda. Penyemak imbas secara konsisten menghantar nama dan nilai butang hantar dengan data yang disiarkan apabila butang diklik atau apabila pengguna menekan kekunci Enter semasa butang mempunyai fokus.
Pertimbangan Lain untuk Pengendalian Borang:
Perlu diingat bahawa cara lain untuk menyerahkan borang wujud, seperti menggunakan JavaScript atau kaedah yang tidak jelas. Pelayar juga mungkin tidak menghantar nama dan nilai butang hantar dalam situasi tertentu. Untuk memastikan pengendalian borang yang boleh dipercayai, sentiasa beri perhatian kepada butiran ini dan elakkan bergantung semata-mata pada menyemak nama dan nilai butang hantar.
Pendekatan komprehensif ini menyediakan kaedah yang boleh dipercayai untuk mengenal pasti butang yang mencetuskan penyerahan borang PHP, tanpa mengira variasi pelayar atau teknik penyerahan borang alternatif.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengenalpasti Butang Yang Mencetuskan Penyerahan Borang PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!