Rumah > pembangunan bahagian belakang > tutorial php > Bagaimana untuk Mencegah Kemasukan Data Tidak Disengajakan pada Muat Semula Halaman?

Bagaimana untuk Mencegah Kemasukan Data Tidak Disengajakan pada Muat Semula Halaman?

Susan Sarandon
Lepaskan: 2024-11-25 00:40:17
asal
628 orang telah melayarinya

How to Prevent Unintentional Data Insertion on Page Refresh?

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>
Salin selepas log masuk

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>
Salin selepas log masuk

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!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan