Form Elemanları ve ASP'de Kullanımı:

Form elemanları, Formlarda kullandığımız elemanlar içerir.

Tabii kullanım alanları değişebilir. Mesela bir ankette de kullanabilirsiniz... Öncelikle Form Elemanımızın postalama metotlarını inceleyelim.

Form Method alanına gireceğimiz bu metotlarla, Form'un taşıdığı değerleri bir sonraki aşamaya hangi postalama metoduyla taşıyacağımızı belirlememiz gerekir.
Bu metotlar iki tanedir. GET ve POST metodu.

GET Metodu:
Bu metodumuzla basit Form işlemleri gerçekleştirebiliriz. Tarayıcılarda yaklaşık bu sınır 4 k kadardır. Fakat bu büyüklük basit Form postalamalarında bize yeterli bir büyüklüktür.

GET Metodumuzda, taşıdığımız bilgiler adres çubuğunda görüntülenecektir. Bazen bu taşıma sistemini göstermek sakıncalı olabilir.

POST Metodu:
O zaman da devreye POST Metodumuz girer. POST Metodumuzun taşıma kapasitesi yoktur. Dilediğimiz kadar veriyi aktarabiliriz.

Ayrıca, veri taşınırken, adres çubuğunda görüntülenmeyerek, önemli bir güvenlik sağlar.
Sonuçta çalışma açısından ikisinin arasında da bir fark yoktur. Önemli olan bilgiyi bir yumak yapıp verdiğimiz Action değerine taşımasıdır.

Şimdi isterseniz, Form Elemanlarını ve kullanımlarını tek tek inceleyelim... Eğer Form Elemanları hakkında daha detaylı bilgi almak isterseniz, DreamWeawer Derslerinde Form Elemanlarını inceleyebilirsiniz...


Input Box:

Ziyaretçiden kısa bilgiler almamızı sağlayan bir Form elemanıdır. Bir örnek yaparak çalışmasını inceleyelim...

<%@ Language=VBScript Codepage="1254"%>
<TABLE WIDTH="14%" BORDER="0">
<TR>
<TD>
<FORM NAME="Anket" ACTION="AnketIsle.asp" METHOD="GET" >
<DIV ALIGN="LEFT">
Adınız:
<INPUT TYPE="text" NAME="Adiniz">
<BR>
Soyadınız:
<INPUT TYPE="text" NAME="Soyadiniz">
<BR>
Yaşınız:
<INPUT TYPE="text" NAME="Yasiniz">
<BR>
<INPUT TYPE="submit" NAME="Submit" VALUE="Gönder">
<INPUT TYPE="RESET" NAME="Submit2" VALUE="Vazgeç">
</DIV>
</FORM>
</TD>
</TR>
</TABLE>


Bu Formu Anket.asp adıyla kaydedin.

Bu sayfamızı da AnketIsle.asp adıyla kaydedin. Ve Önceki sayfayı Browser'da çalıştırıp, doldurarak, Gönder butonuna basarsak, formdaki bilgilerimiz, AnketIsle.asp'ye taşınır. Ve sonuç Browser'a yazdırılır.

<%@ Language=VBScript Codepage="1254"%>

<%
Dim Adiniz, Soyadiniz, Yasiniz

Adiniz=Request.QueryString("Adiniz")
Soyadiniz=Request.QueryString("Soyadiniz")
Yasiniz=Request.QueryString("Yasiniz")
%>


Adınız: <%Response.Write Adiniz & "<br>"%>
Soyadınız: <%Response.Write SoyAdiniz & "<br>"%>
Yaşınız: <%Response.Write Yasiniz & "<br>"%>

Formu Doldurup, Gönder dediğimiz zaman, kodlarımızda hata yoksa sayfa aşağıdaki çıktıyı verir.

Adınız: idris
Soyadınız: karakaya
Yaşınız: 21


Metodumuz GET olduğu için, adres çubuğunda şu şekilde bir adres yer alacaktır. POST Metodunu kullanırsanız bunlar görünmez. Gizli Kalır

http://oguz/3/AnketIsle.asp?Adiniz=O%F0uz&Soyadiniz=G%FCl&Yasiniz=25&Submit=G%F6nder

TextArea:  

Bu Form elemanımız da ziyaretçiden bilgiler almamızı sağlayan, InputBox'dan daha içerikli bilgi alabileceğimiz, ve hatta satırlar doldurabileceğimiz bir Form Elemanımızdır. Bir örnek yaparak daha iyi anlayalım.

<%@ Language=VBScript Codepage="1254"%>

<TABLE WIDTH="14%" BORDER="0">
<TR>
<TD>
<FORM NAME="Mesaj" ACTION="MesajIsle.asp" METHOD="POST" >
<DIV ALIGN="LEFT">
Lütfen İletmek İstediğiniz Mesajı Yazınız:
<TEXTAREA NAME="Mesajiniz"></TEXTAREA>
<BR>
<BR>
<INPUT TYPE="submit" NAME="Submit" VALUE="Gönder">
<INPUT TYPE="RESET" NAME="Submit2" VALUE="Vazgeç">
</DIV>
</FORM>
</TD>
</TR>
</TABLE>


Önce bu şekilde bir Form sayfası oluşturun. Ve sonra MesajIsle.asp isimli form verilerini işleyeceğimiz ikinci sayfamızı oluşturalım...

Aşağıdaki kodları da yazıp MesajIsle.asp adıyla kaydedelim. Ve Mesaj.asp'yi browser'da çağırarak çalıştırdığımız zaman, bir metin kutusu gelir. Bu box'ı doldurup gönder butonuna basarsak, iletimiz bir sonraki sayfaya, yani Form Action'ında verdiğimiz MesajIsle.asp'ye taşınır. Ve Response metoduyla ekrana bastırılır...

<%@ Language=VBScript Codepage="1254"%>
<%
Dim Mesajiniz
Mesajiniz=Request.Form("Mesajiniz")
%>
Mesajınız: <%Response.Write Mesajiniz%>

Eğer kodlarda bir hata yapmadıysak ekran çıktısı aşağıdaki gibi olacaktır...
Mesajınız: Sayfanız Güzel Olmuş. Teşekkürlerimizi Sunarız.

ANA SAYFA