Rumah > pembangunan bahagian belakang > tutorial php > Bagaimana untuk Mencegah Penyerahan Pendua Selepas Muat Semula Borang?

Bagaimana untuk Mencegah Penyerahan Pendua Selepas Muat Semula Borang?

Linda Hamilton
Lepaskan: 2024-11-12 05:19:02
asal
694 orang telah melayarinya

How to Prevent Duplicate Submissions After Form Refresh?

Mencegah Penyerahan Duplikat dengan Pengendalian Segar Semula

Dalam pembangunan web, adalah perkara biasa untuk menghadapi isu penyerahan pendua apabila halaman dimuat semula selepas penyerahan borang. Untuk menangani perkara ini, pertimbangkan pendekatan berikut:

Bayangkan mempunyai coretan kod yang kelihatan seperti ini:

<?php
    if (isset($_POST['name'])) {
        // Database operations...
        echo "Operation Done";
        die();
    }
?>

<form action='page.php' method='post' name="myForm">
    <input type="text" maxlength="50" name="name">
Salin selepas log masuk

Apabila anda menyerahkan borang ini, data yang disediakan dimasukkan ke dalam pangkalan data, dan mesej kejayaan dipaparkan. Walau bagaimanapun, jika anda memuat semula halaman, data akan diserahkan semula ke pangkalan data.

Penyelesaian: Ubah Hala Selepas Penyerahan

Untuk mengelakkan pertindihan ini, ia perlu penting bahawa selepas operasi selesai, anda tidak memaparkan respons pada halaman yang sama. Sebaliknya, ubah hala ke halaman baharu.

// Database operations...
// Set success flash message. (Assuming you're using a framework)
header('Location: /path/to/record');
exit;
Salin selepas log masuk

Dengan mengubah hala selepas penyerahan, anda memastikan bahawa menyegarkan halaman hanya akan mencetuskan permintaan GET untuk halaman baharu yang anda ubah hala ke, menghalang penyerahan pendua.

Atas ialah kandungan terperinci Bagaimana untuk Mencegah Penyerahan Pendua Selepas Muat Semula Borang?. 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