Bilgi-Sayar.NET Menu

ADRES:

ASP’de Form İşlemleri

ASP ile form işlemleri diğer dillerde olduğu gibi get ve post olmak üzere 2 çeşittir. Fakat get yöntemi güvenlik açısından pek tercih edilmemektedir. Get yönetimiyle veriler adres çubuğunda gözükür, ve kullanıcı onların üstünde oynamalar yaparak sisteme zarar verebilir. Bu yüzden genellikle post yöntemi kullanılır. Post yönteminde veriler adres çubuğunda gözükmez.

Get yöntemi Request.QueryString ile kullanılır. Post yönteminde ise Request.Form ile formdan gelen verileri kolayca alabiliriz. Get yöntemi ile formdan veri almak QueryString ile veri almakla aynıdır.

Basit bir form hazırlıyalım.

<form action=”Kaydet.asp” method=”post“>
Ad: <input type=”text” name=”isim” value=”Varsayılan Değer” /><br />
<input type=”submit” name=”kaydet” value=”Kaydet” />
</form>

Bu form ile post yöntemiyle Kaydet.asp sayfasına form verilerini yolluyan bir form oluşturduk. Formumuzda isim adında yazı yazılabilecek (text) bir kutucuk ve kaydet adında verileri yollayan (submit) bir buton bulunmaktadır.

Kaydet.asp‘de formdan gelen isim verisini ekrana yazdıralım.

Response.Write Request.Form(“isim“)

Kaydet.asp‘de isim değerini değişkene tanımlayalım.

Ad = Request.Form(“isim“)

Kaydet.asp‘de isim verisinin boş olup olmadığını kontrol edelim.

If Request.Form(“isim“)=“” Then
Response.Write “Ad boş bırakılmıştır.
End If

Kaydet.asp‘de isim verisinin karakter sayısını ekrana yazdıralım. (Bu makalede açıklanmıştır.)

Response.Write Len(Request.Form(“isim“))

Bu şekilde bu form işlemlerini uzatıp veritabanına kaydedebilir, e-posta gönderebilir, ekrana yazdırabilirsiniz…

Bir önceki yazımız olan ASP'de Global.asa ile Aktif Kişi Sayacı başlıklı makalemizde ASP ve ASP'de Global.asa ile Aktif Kişi Sayacı hakkında bilgiler verilmektedir.

  • lffwhnpohas

    Örnek olarak ziyaretçi defteri yapar mısınız?

  • Bilgi-Sayar.NET

    Ziyaretçi defteri yapabilmek için veritabanı bilgiside gereklidir. Biraz daha ileri konularda anlatılabilir.

  • Hakan Ustunsoy

    Açıklaman için teşekkürler peki benim form kısmımda aylar var ve ben formdan 12 değilde sadece 3 ayı seçtim bunların checkbox ve value=0 şimdi sadece seçtiğim 3 ayın ggörünmesini istiyorum ne yapmam lazım? yardım edersen sevinirrim

    • Bilgi-Sayar.NET

      12 ayın value değerlerine isterseniz sırasını isterseniz ay adını verin. Hepsinin value değeri aynı olmasın (hepsi ay olduğu için name(isim) aynı olmalıdır). Bu şekilde yaptıktan sonra normal formdan veri çekme yöntemi ile checkboxtan veri çekebilirsiniz.

      Mesela:
      ay adında 12 tane checkbox oluşturup value değerlerine sıra numaralarını verdikten sonra

      < %Response.Write Request.Form("ay")%>

      asp koduyla seçilenleri gösterebilirsiniz. Seçilen aylar aralarında virgül (,) ile listelenecektir.