Rumah > Artikel > pembangunan bahagian belakang > Bagaimana untuk Mencegah Kemasukan Data Tidak Disengajakan pada Muat Semula Halaman?
Mengelakkan Penyisipan Data Tidak Disengajakan pada Muat Semula Halaman
Dalam pembangunan aplikasi web, adalah penting untuk mengelakkan pemasukan data yang tidak diingini apabila pengguna memuat semula halaman selepas menghantar borang. Satu pendekatan biasa untuk isu ini ialah mengubah hala pengguna ke halaman lain selepas penyerahan borang.
Pertimbangkan coretan kod berikut di mana borang digunakan untuk memasukkan data ke dalam pangkalan data:
<?php if (isset($_POST['name'])) { // Operation on database, such as inserting $_POST['name'] into a table echo "Operation Done"; die(); // Die() is used to prevent further processing, which would otherwise cause the form to be resubmitted on page refresh. } ?> <form action='page.php' method='post' name="myForm"> <input type="text" maxlength="50" name="name" class="input400" /> <input type="submit" name="Submit" /> </form>
Apabila borang diserahkan, data dimasukkan ke dalam pangkalan data, dan mesej "Operasi Selesai" dipaparkan. Walau bagaimanapun, jika pengguna memuat semula halaman, borang akan diserahkan semula, menyebabkan data dimasukkan semula.
Untuk mengelakkan isu ini, adalah disyorkan untuk mengubah hala pengguna ke halaman lain selepas penyerahan borang. Ini menghalang borang daripada diserahkan semula pada muat semula halaman:
<?php if (isset($_POST['name'])) { // Operation on database, such as inserting $_POST['name'] into a table // Set a success flash message (assuming you are using a framework). header('Location: /path/to/record'); // Redirects the user to a different page upon successful form submission. exit; // Die() is not necessary here since the header redirect will send the user away from the page. } ?> <form action='page.php' method='post' name="myForm"> <input type="text" maxlength="50" name="name" class="input400" /> <input type="submit" name="Submit" /> </form>
Dengan mengubah hala pengguna ke halaman lain selepas penyerahan borang, risiko sisipan data yang tidak diingini pada muat semula halaman dihapuskan.
Atas ialah kandungan terperinci Bagaimana untuk Mencegah Kemasukan Data Tidak Disengajakan pada Muat Semula Halaman?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!