ASP Form İşlemleri

Kullanıcıdan formlar yoluyla bilgi almak için ASP'yi kullanabiliriz. HTML Formlarında yöntem (method) olarak GET belirtilmişse Request.QueryString, POST belirtilmişse Request.Form değerlerini kullanırız. Şimdi bunları tek tek ve birer örnekle görelim:

GET Metoduyla Veri Almak

GET Metodu verileri adres satırında yer alması yoluyla alır. Burada dosya adına eklenmiş bir soru işareti (?) sonrasında değişken=değer şeklinde veriler yer alır. Birden fazla veri kullanırken aralara ve (&) işareti getirilir.

Aşağıdaki örnekte HTML bir form oluşturduk ve bu form gönderildiğinde yine aynı dosya olan "form.asp" dosyasına verileri GET metodu ile gönderecektir. if not isempty( Request.QueryString("ad") ) Then ile değerin var olup olmadığını kontrol ettikten sonra, değer var ise "Hoş Geldin ad soyad" şeklinde yazılmasını sağlayacaktır.

ASP Kodu

<form method="get" action="form.asp">
   Adınız: <input type="text" name="ad" /><br />
   Soyadınız: <input type="text" name="soyad" /><br /><br />
<input type="submit" value="Gönder" />
</form>

<%
   if not isempty( Request.QueryString("ad") ) Then

      ad = Request.QueryString("ad")
      soyad = Request.QueryString("soyad")

      Response.Write "Hoş geldin " + ad + " " + soyad

   end if
%>
Örneğin yukarıdaki formu isim Murat, soyad Eliçalışkan yazarak gönderdik. Bu durumda adres satırı form.asp?ad=Murat&soyad=Eliçalışkan şeklinde görülecektir. İşte bu GET metodu yoluyla veri aldığımızı gösterir.

POST Metoduyla Veri Almak

POST Metodu verileri adres satırında görülmeden gönderir ve buradaki değerleri alabilmek için Request.Form("nesne") kullanılır.

Aşağıdaki örnekte yukarıdaki formu bu kez method="post" yazarak POST metoduyla hazırladık. Gönder butonuna basıp formu gönderdiğimizde form.asp dosyasına verileri gönderir. Bu kez POST metodu kullanıldığı için verileri Request.Form("nesne") yoluyla alırız.

ASP Kodu

<form method="post" action="second.asp">
   Adınız: <input type="text" name="ad" /><br />
   Soyadınız: <input type="text" name="soyad" /><br /><br />
<input type="submit" value="Gönder" />
</form>

<%
   if not isempty( Request.Form("ad") ) Then

      ad = Request.Form("ad")
      soyad = Request.Form("soyad")

      Response.Write "Hoş geldin " + ad + " " + soyad

   end if
%>
Formu gönderdiğimizde adres satırı yine form.asp'dir. Ancak verilerle işlem yapabilmekteyiz.