Asp.NET ‘te Form Doğrulama

Tarih : 25 Haziran 2009 by admin

Asp.NET ‘te kullanıcıdan alınan bilgileri kontrol etmek için form doğrulama kontrolleri mevcut. Oluşturacağınız formlarda zorunlu alanlar(kullanıcı adı, mail), belli aralıkta veri girilebilen bölümler(yaş, not), karşılaştırılan alanlar(şifre tekrarları), uygun ifade biçimleri(mailllerdeki @ işareti ve .com uzantısı ) gibi alanlar olacaktır. İşte tüm bu kontrolleri yapmak için Validation Controls yani form doğrulama kontrolleri kullanılır. Bu dersimizde bu kontrolleri yine örneklerle beraber ele alacağız. Dersin sonunda bu kontrolleri anlatan bir de video var.

Sayfamıza form doğrulama kontrollerini eklemek için Dreamweaverda ASP.NET sekmesindeki more tags butonuna tıklayın. Validation Server Controls (Doğrulama Sunucu Kontrolleri ) bölümüne gelin.  Şimdi bu bölümdeki kontrolleri inceleyelim kullanımlarını videoda anlatacağız.

1- asp:RequiredFieldValidator :

(Required : Gerekli , Field : Alan , Validator : Onaylayıcı,tasdik edici)

Bu kontrolle metin kutularına bilgi girilmesi zorunlu hale getirilir.

<asp:RequiredFieldValidator ControlToValidate=”textbox1″ ID=”adi” runat=”server” Text=”Adınızı Giriniz”/> kodu ile sayfaya eklenir. ControlToValidate özelliğine hangi alanı kontrol edeceğimizi yazıyoruz. Kontrol edilen alan textbox, checkbox(list), radiobutton(list), gibi kontroller olabilir. Text özelliğine hata mesajını yazıyoruz.

2- asp:CompareValidator:

(Compare : Karşılaştırma)

Kullanıcının girdiği değer ile başka bir değeri karşılaştırmak için kullanılır.

<asp:CompareValidator ControlToCompare=”textbox1″ ControlToValidate=”textbox2″ ID=”sifrekontrol” Operator=”Equal” runat=”server” Text=”Şifreler Uyuşmuyor” Type=”String” /> koduyla sayfaya eklenir.

ControlToCompare ve ControlToValidate özelliklerine karşılaştıracağımız alanları yazıyoruz. Operator özelliği, karşılaştırılan alanların birbiriyle eşit mi?, biri diğerinden büyük mü veya küçük mü? şeklinde karşılaştırma yapar. Type özelliği ise karşılaştırılan alanların sayı, yazı şeklinde mi karşılaştırılacağını belirler.

Equal : eşit

NotEqual: eşit değil

GreaterThan: -den büyük

GreaterThanEqual: -den büyük eşit

LessThan  : -den küçük

LessThanEqual: -den küçük eşit

3- asp:RangeValidator:

(Range : Arasında olma)

Kullanıcının belirtilen aralıkta değerler girmesini sağlar.

<asp:RangeValidator ControlToValidate=”textbox1″ ID=”notkontrol” MaximumValue=”100″ MinimumValue=”0″ runat=”server” Text=”0-100 arasında not yazınız” /> kodu ile sayfaya eklenir.

MaximumValue özelliğine enbüyük değer, MinimumValue özelliğine en küçük değer yazılır.

4- asp:RegularExpressionValidator:

(Regular : Uygun/düzgün , Expression : ifade )

Bilginin belli bir biçimde girilmesi sağlar.

<asp:RegularExpressionValidator ControlToValidate=”textbox1″ ID=”mailkontrol” runat=”server” Text=”Mail adresi Yanlış” ValidationExpression=”[a-zA-Z0-9]+@[a-zA-Z0-9]+\.[a-zA-Z0-9]+” /> koduyla sayfaya eklenir.

Bu kontrolde ValidationExpression özelliğine mail adresi kontrolü için yukarıdaki değerler yazılır. Bu değerler hazır değerlerdir. Dreamweaverda bu hazır değerleri ekleyebileceğimiz bir özellik yok. Visual Web Developer programında ise bu hazır değerler mevcuttur. İnternet adresleri için “http(s)?://([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?”  değerini kullanabiliriz.

5- asp:CustomValidator:

(Custom : Özel,kişiselleştirilmiş)

Web geliştiricinin istediği bir geçerlilik denetleme yöntemi belirlemesini sağlar. Örneğin, sadece tek sayıların veya çift sayıların girişine izin verme gibi.

6- asp:ValidationSummary:

(Summary : özet)

Formda oluşan tüm hataları ve hata mesajları gibi bilgileri tutar.

<asp:ValidationSummary HeaderText=”Şu Hatalar Oluştu” ID=”hataozeti” runat=”server” /> koduyla sayfaya eklenir.

Şimdi bu kontrolleri Dreamweaver ‘da nasıl kullanacağımızı gösteren  video anlatımına bakalım.

3 Yorumlar

  1. ekrem Says:

    Kaydet Butonuna Bi Özellik Eklenmicekmi ya ?

  2. admin Says:

    Kaydet butonuna kayıt kodlarının bulunduğu kod bölümüne gitmesi için onclick=”kaydet” gibi bir şey yazmamız gerek tabi. Ama sadece doğrulama kontrollerini denemek için buna gerek yok.

  3. fatih Says:

    Ben şunu istiyorum. Kaydet butonuna bastığında eğer girilmesi zorunlu kıldığım alanlar varsa ve onlardan biri dahi girilmediyse kaydet butonun işlev görmemesini istiyorum.Yada söyle düşünürsek birden çok buton var ve ben bu kontorollerin yalnızca bir butonda etkin olmasını diğer bir butona tıkladığında o kontrollerin onda geçerli olmamasını istiyorum tüm bu ayarlamalar nasıl yapılıyor.Range validatorun hangi olayda tetikleneceğini nasıl belirliyoruz

Yorum Yaz

Takvim

Şubat 2012
Pts Sal Çar Per Cum Cts Paz
« Oca    
 12345
6789101112
13141516171819
20212223242526
272829