6. bölüm formlar - Başta ziyaretçilerinizin sizinle, talep ettiğiniz bilgilerle (Ad soyad - telefon - e-posta vs.), iletişime geçmesini sağlayan formları inceleyelim. Formları site içi arama panelleri oluşturmak gibi daha bir çok alanda da kullanmaktayız.
Formlar<form> etiketi ile belirtilir.
Formlar sayfa içerisinde form elemanlarını kapsayan alanlardır.
Form elemanları ise siteyi kullanan kişilerin formla birlikte göndermek istediği bilgileri girmelerini veya seçmelerini sağlar. Bu elemanlar, text fields, textarea fields, drop-down menuler, radio butonlar, checkboxlar, vs.'dir.
<form>
<input>
<input>
</form>
Yukarıdaki kodları sayfanıza eklediğinizde en basit anlamda bir form oluşturmuş olacaksınız. Bu form iki adet text field dan oluşmaktadır.
Inputlar<input> etiketi ile belirtilir.
Inputları tip özelliğinden yararlanarak çeşitlendirebiliriz. En çok kullanılan tipleri nasıl kullanabileceğinizi aşağıdan inceleyebilirsiniz.
Text Fields
Eğer kullanıcılarınızın harf, sayı vs. yazmasını sağlamak istiyorsanız text field tipini (type) kullanmalısınız.
Yukarıdaki kodlar browserda aşağıdaki gibi gözükecektir:
Örnekte görüldüğü üzere input tipimizi text olarak belirledik (type="text"). Bir de formu gönderirken server tarafında kodlar işlenirken karışıklık olmaması için inputlara işlevine uygun olarak bir referans adı veriyoruz (Ör: name="ad").
Genelde bir çok tarayıcı (i.e., firefox vs.) varsayılan olarak text field ları 20 karakter uzunluğunda gösterir.
Radio buton lar
Radio butonlar kullanıcılara bir çok seçenekten bir tanesini seçtirmek için kullanılır.
<form>
<input type="radio" name="cinsiyet" value="erkek"> Erkek
<br>
<input type="radio" name="cinsiyet" value="kadin"> Kadın
</form>
Yukarıdaki kodlar browserda aşağıdaki gibi gözükecektir:
Radio tipi inputlarda sadece tek bir seçeneği seçebilirsiniz. Bunu sağlamak için radio grubuna ait elemanların name parametrelerini aynı yapmamız gerekir. Örnekte görüldüğü gibi name="cinsiyet" her iki inputta da aynıdır. Server tarafında kodlar işlenirken hangi seçeneğin seçildiğini belirtmek için value parametresi kullanılır.
Checkbox lar
Checkbox lar kullanıcılara seçenekler arasından birden fazla seçim yapmalarını sağlamak amacı ile kullanılır.
<form>
Bir işim var:
<input type="checkbox" name="sahip" value="is">
<br>
Bir evim var:
<input type="checkbox" name="sahip" value="ev">
<br>
Bir arabam var:
<input type="checkbox" name="sahip" value="araba">
</form>
Yukarıdaki kodlar browserda aşağıdaki gibi gözükecektir:
Checkbox tipi inputlarda birden çok seçeneği seçebilirsiniz. Radio butonlarda olduğu gibi checkbox elemanlarınında name parametrelerini aynı yapmamız gerekir. Örnekte görüldüğü gibi name="sahip" her elemanda aynıdır. Server tarafında kodlar işlenirken hangi seçeneğin seçildiğini belirtmek için value parametresi kullanılır.
Formlarda kullanılan diğer form elemanları
Drop Down Menu (Açılır Menü)
Bu tip elemanlar kullanıcıya açılır bir seçenek listesinden seçimini yaptırmak için kullanılır.
Drop Down Menu ler<select> etiketi ile belirtilir. Menu içeriğindeki her bir seçeneği oluşturmak için ise <option> etiketi kullanılır. Hemen örneğimize bakalım:
Yukarıdaki kodlar browserda aşağıdaki gibi gözükecektir:
Server tarafında kodlar işlenirken menümüzü belirtmek için ona bir isim veririz (Ör: name="dersler"). Hangi seçeneğin seçildiğini belirtmek için de option lar için value parametremizi kullanırız.
Textarea (Text alanları)
Bu tip elemanları kullanıcıya geniş bir metin yazdırmak istediğimiz durumlarda kullanılırız.
Textarea (Text alanları) <textarea> etiketi ile belirtilir. Kullanıcıların geniş bir metin yazması düşünülüyorsa form elemanı olarak textarea ları kullanmak idealdir. Textarea lara satır ve sütun parametreleri eklenerek yazı alanının boyutları belirlenebilir.
<form>
<textarea rows="5" cols="50"> Bu alana geniş bir metin yazabilirsiniz.</textarea>
</form>
Yukarıdaki kodlar browserda aşağıdaki gibi gözükecektir:
Formların faaliyet (action) özellikleri ve Gönder (Submit) butonu
Tüm elemanlarımızı oluşturduk artık bu formu işler hale getirelim. Formumuzu göndermek için html sayfamızdaki kodlar yeterli değildir. Bu form bilgilerini işleyip bize belirlediğimiz yolla (Ör: E-posta) ulaşmasını sağlamak için server tabanlı bir dil ile oluşturulmuş harici bir kod dosyası da gereklidir. Gönder butonuna bastığımız zaman ASP veya PHP ile oluşturulmuş harici kod dosyamız bize form elemanlarını işleyip E-posta olarak gönderir.
Yukarıdaki kodlar browserda aşağıdaki gibi gözükecektir:
Son olarak Fieldset ten bahsedip form konusunu kapatacağım,
Form elemanlarını kategorilere ayırmak istediğimizde bu etiketten faydalanırız. Belirlenen kategori altında bulunan form elemanlarının çevresi varsayılan olarak aşağıdaki örnekte görüldüğü gibi bir çerçeve ile kaplanır.
Fieldset ler<fieldset> etiketi ile, fieldsetin hangi kategoriye ait olduğu ise <legend> etiketi ile belirtilir.
<fieldset>
<legend>
Kişisel Bilgiler:
</legend>
<form action="#">
Ad <input type="text" size="3">
Soyad <input type="text" size="3">
</form>
</fieldset>
Birden fazla fieldset kullanarak kategorilerimizi çoğaltabiliriz. Daha ileride göreceğimiz CSS yardımı ile görüntüde iyileştirmeler yaparak daha hoş fieldset ler elde edebiliriz.
Katrasa.com üzerinde bulunan tüm yazılı ve görsel malzemenin telif hakları belirtilen isimlere aittir. İzinsiz kopyalamak, kullanmak, yayınlamak tehlikeli ve yasaktır. Hırsızların kalbi itinayla kırılır, eline verilir.