On 19-Feb-2003, Togu Raja wrote: > Begini, saya membuat sebuah program aplikasi web dgn PHP. Di salah > satu bagian program, user akan men-submit sebuah FORM untuk > menginput data sekaligus mengedit data, jika sudah ada data > sebelumnya. Saya ingin setelah ia men-submit FORM tsb, ia tidak > dapat menekan tombol 'BACK' pada Browser, atau apa saja yg membuat > pindah ke history browser sebelumnya. > > Jadi jika ia ingin mengakses FORM yg sama setelah men-submit FORM > itu, ia harus mengklik-nya pada menu yg tersedia, bukan menekan > tombol 'BACK'.
Jadi problem sebetulnya adalah: gimana caranya supaya suatu form tidak bisa disubmit dg data yg sama lebih dr sekali (misalnya supaya data yg masuk gak dobel). Menurut saya jika approachnya adalah mendisable back button itu tidak tepat. Alasannya ya seperti yg saya bilang di posting saya yg satunya. Salah satu solusinya adalah seperti yg digunakan oleh Apache Struts (salah satu MVC framework open-source yg populer utk J2EE), yaitu dg menggenerate suatu one-time-use token yg unique pada saat formnya dipopulate utk disave di session dan juga di html formnya sbg hidden input, lalu pada saat kita terima balik formnya (setelah disubmit) kita cek tokennya, kalo gak valid berarti data ini udah pernah disubmit sebelumnya. Jelasnya coba liat dokumentasi Struts utk saveToken(), isTokenValid() dan resetToken() di class Action. Cara yg sama tentunya bisa saja diterapkan di PHP... tapi buat homework aja ya :) Hint: google "php prevent duplicate submit". Ronny -- Utk berhenti langganan, kirim email ke [EMAIL PROTECTED] Informasi arsip di http://www.linux.or.id/milis.php3
