Kembali ke masa awal CGI, kami memiliki banyak bentuk yang akan memicu berbagai tindakan backend. Seperti pemberitahuan teks ke grup, pekerjaan cetak, pengumpulan data, dll.
Jika pengguna berada di halaman yang mengatakan "Harap tunggu ... Melakukan beberapa pekerjaan BESAR yang bisa memakan waktu.". Mereka lebih mungkin untuk melakukan REFRESH dan ini akan menjadi BURUK!
MENGAPA? Karena itu akan memicu pekerjaan yang lebih lambat dan pada akhirnya menghambat semuanya.
Solusinya? Biarkan mereka melakukan bentuk mereka. Ketika mereka mengirimkan formulir mereka ... Mulailah pekerjaan Anda dan kemudian arahkan mereka ke halaman lain yang memberitahu mereka untuk menunggu.
Dimana halaman di tengah sebenarnya menyimpan formulir data yang dibutuhkan untuk memulai pekerjaan. Namun halaman WAIT berisi riwayat javascript yang dihancurkan. Jadi mereka dapat MEMBUANGKAN halaman tunggu itu semau mereka dan itu tidak akan memicu pekerjaan asli untuk dimulai di latar belakang karena halaman WAIT itu hanya berisi data formulir yang diperlukan untuk WAIT itu sendiri.
Harapan itu masuk akal.
Fungsi penghancuran riwayat juga mencegah mereka mengklik KEMBALI dan kemudian menyegarkan juga.
Itu sangat mulus dan bekerja dengan baik selama BANYAK tahun sampai organisasi nirlaba ditutup.
Contoh: FORMULIR MASUK - Kumpulkan semua info mereka dan ketika dikirim, ini memicu pekerjaan backend Anda.
RESPONS dari entri formulir - Mengembalikan HTML yang melakukan pengalihan ke halaman tunggu statis Anda dan / atau POST / GET ke formulir lain (halaman WAIT).
HALAMAN TUNGGU - Hanya berisi FORM data yang terkait dengan halaman tunggu serta javascript untuk menghancurkan history terbaru. Suka (-1 ATAU -2) untuk hanya menghancurkan halaman terbaru, tetapi tetap memungkinkan mereka untuk kembali ke halaman entri FORM aslinya.
Setelah mereka berada di halaman TUNGGU Anda, mereka dapat mengklik REFRESH sebanyak yang mereka inginkan dan itu tidak akan pernah memunculkan pekerjaan FORM asli di backend. Sebagai gantinya, halaman WAIT Anda harus merangkul META waktunya refresh itu sendiri sehingga selalu dapat memeriksa status pekerjaan mereka. Ketika pekerjaan mereka selesai, mereka dialihkan dari halaman tunggu ke mana pun Anda inginkan.
Jika mereka melakukan REFRESH secara manual ... Mereka hanya menambahkan satu cek lagi dari status pekerjaan mereka di sana.
Semoga membantu. Semoga berhasil.