Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk Mencegah Penyerahan Borang Berbilang Klik dalam PHP Menggunakan Token Unik?
Pencegahan Penyerahan Borang Berbilang Klik dalam PHP
Dalam aplikasi web, menghalang penyerahan berbilang borang boleh meningkatkan pengalaman pengguna dan integriti data. PHP menawarkan penyelesaian untuk menangani isu ini.
Penyelesaian: Token Unik
PHP menggunakan token unik, dijana setiap kali borang dipaparkan. Token ini boleh digunakan sekali sahaja. Melaksanakan sistem token bukan sahaja menghalang penyerahan berbilang borang tetapi juga melindungi terhadap Pemalsuan Permintaan Merentas Tapak (CSRF) dan serangan main semula.
Contoh Pelaksanaan:
<?php session_start(); // Function to create a unique token function getToken() { $token = sha1(mt_rand()); $_SESSION['tokens'][$token] = 1; return $token; } // Function to validate a token function isTokenValid($token) { if (isset($_SESSION['tokens'][$token])) { unset($_SESSION['tokens'][$token]); return true; } return false; } // Check if a form has been submitted $postedToken = filter_input(INPUT_POST, 'token'); if ($postedToken) { if (isTokenValid($postedToken)) { // Process form } else { // Handling for invalid token } } // Generate a token for the displayed form $token = getToken(); ?> <form method="post"> <fieldset> <input type="hidden" name="token" value="<?php echo $token; ?>"> <!-- Add form content --> </fieldset> </form>
Tambahan Pertimbangan:
Dengan melaksanakan penyelesaian berasaskan token ini, pembangun PHP boleh menghalang berbilang bentuk dengan berkesan penyerahan, memastikan integriti data dan meningkatkan pengalaman pengguna.
Atas ialah kandungan terperinci Bagaimana untuk Mencegah Penyerahan Borang Berbilang Klik dalam PHP Menggunakan Token Unik?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!