Java 04 Eki 2006 13:28
Formun İki Kez Gönderilmesini Engelleme
Acemi internet kullanıcılarının çok sık yaptığı bir iştir durmadan “Gönder” veya “Tamam” gibi düğmelere basmak. Sağ altta yükleniyor çubuğu tık tık artar ve sunucudan cevap gelmesini bekler. Kullanıcıysa bilgisayarın kendisini duymamış olacağını farzederek tekrar tekrar gönder tuşuna basar. Bu gereksiz tıklamalar bazen sunucunun aşırı yüklenmesine neden olabilir. Ama burada en önemli sorun -eğer yeterli güvenlik önlemleri alınmamışsa- veritabanında fazla kayıtların oluşması vs. olabilir.
İngilizce makalenin orijinalini buradan okuyabilirsiniz.
Makalede temel olarak iki teknikten bahsediliyor. İlk yöntem; Javascript kullanarak tıklamadan hemen sonra butonu pasifleştirmektir. Yazar Scott Mitchell tarafından da projelerde sıklıkla kullanılan ikinci yöntemse “ekranı dondurup ekranda verilerinin işlenmekte olduğu” ile ilgili bir mesaj vermek olarak özetlenebilir.
İkinci yöntem biraz daha karmaşık ve işin içine CSS tasarım dosyaları vs. giriyor. O yüzden ilgilenenler bu yöntemi orijinal makaleden okuyabilirler.
Birinci yöntemle ilgili bir örnek yapalım.
Görüldüğü gibi oldukça basit bir JS (Javascript) koduyla olayı çözmüş olduk. Buraya tıklayarak kodun çalışan bir demosunu görebilirsiniz
Diğer yöntemin uygulanması da oldukça keyifli. Mutlaka deneyin.
Verdiğim yöntemin PHP, ASP, ASP.NET gibi dillerde kod yazarken oldukça işinize yarayacağını umuyorum….
İngilizce makalenin orijinalini buradan okuyabilirsiniz.
Makalede temel olarak iki teknikten bahsediliyor. İlk yöntem; Javascript kullanarak tıklamadan hemen sonra butonu pasifleştirmektir. Yazar Scott Mitchell tarafından da projelerde sıklıkla kullanılan ikinci yöntemse “ekranı dondurup ekranda verilerinin işlenmekte olduğu” ile ilgili bir mesaj vermek olarak özetlenebilir.
İkinci yöntem biraz daha karmaşık ve işin içine CSS tasarım dosyaları vs. giriyor. O yüzden ilgilenenler bu yöntemi orijinal makaleden okuyabilirler.
Birinci yöntemle ilgili bir örnek yapalım.
<script type="text/javascript"> function DugmeyiPasiflestir(b) { b.disabled = true; b.value = 'Gönderiliyor...'; } </script> Düğmenin nasıl pasifleştirildiğini ve metninin nasıl değiştiğini görmek için tıklayınız... <input id="gonderBtn" name="gonderBtn" type="submit" /> value="Gönder" onclick="DugmeyiPasiflestir(this);" />
Görüldüğü gibi oldukça basit bir JS (Javascript) koduyla olayı çözmüş olduk. Buraya tıklayarak kodun çalışan bir demosunu görebilirsiniz
Diğer yöntemin uygulanması da oldukça keyifli. Mutlaka deneyin.
Verdiğim yöntemin PHP, ASP, ASP.NET gibi dillerde kod yazarken oldukça işinize yarayacağını umuyorum….

07 Eki 2006 22:56 1.Ufuk Eskici…
27 Mar 2008 8:37 2.ülkü bayhan…
sitenizi çok begendim. Fizikçiyim. CYGWın install etmeye ugrasırken size rasladım. Takip edeceğim.
Donanım bilgim cok eksik. Sorum oldukca yazarım.
İyi calışmalar
Dr. Ülkü Bayhan