Bir form içerisindeki alanları ayrı ayrı doğrulamak için kural dediğimiz tanımlamalar yapmalıyız. Kurallar sayesinde, formdan gelen değerlerin bizim istediğimiz formatta olup olmadığını kontrol edebilmekteyiz. Şimdi aşağıdaki örnek koda bakalım ve bir kural nelerden oluşuyor inceleyelim:
$fdo->kural('kulAdi', 'Kullanıcı adı', 'gerekli|ara_uzunluk[5,10]|harf');
Tahmin ettiğiniz gibi formDogrula sınıfında, kural ekleme işlemini kural isimli metot ile yapıyoruz. Bu metot sıralı bir şekilde 3 tane parametre almak zorundadır:

Bu parametreleri virgül (,) karakteri ile, doğrulamada kullanılacak olan fonksiyonları ise dik çizgi (|) karakteri ile ayırıyoruz. Doğrulamada kullanılacak fonksiyonlara parametre göndermek gerekiyorsa, bu parametreleri köşeli parantezler ([ ve ]) arasına ve virgülle ayırarak yazıyoruz. [5,10] gibi...
gerekli, ara_uzunluk, harf, rakam gibi fonksiyonlar formDogrula sınıfının "eklenti" özelliğinden gelmektedir. Eklentiler ile ilgili bilgileri eklentiler sayfasında bulabilirsiniz ve kurallar içerisinde kullanabileceğiniz bu fonksiyonları daha yakından tanıyabilirsiniz.
Kuralları biraz tanıdığımıza göre, bir önceki konuda başladığımız örnekle devam edelim. Hatırlarsanız örneğimizi oluşturan "form.html" sayfası şu kodlardan meydana geliyordu:
<form name="form1" method="post" action="form_isle.php">
<fieldset><legend>Üye kayıt:</legend>
<p> <label>Kullanıcı adı:</label> <input type="text" name="kulAdi" /> </p>
<p> <label>Email adresi:</label> <input type="text" name="email" /> </p>
<p> <label>Parola :</label> <input type="text" name="parola" /> </p>
<p> <button type="submit">Gönder</button> </p>
</fieldset>
</form>
Şimdi bu formdaki alanların tek tek nasıl doğrulanacağını gösteren senaryolar oluşturalım:
bu senaryonun "kural" olarak belirtilmiş hali şöyle olacaktır:
$fdo->kural('kulAdi', 'Kullanıcı adı', 'gerekli|ara_uzunluk[5,10]|harf');
bu senaryonun "kural" olarak belirtilmiş hali şöyle olacaktır:
$fdo->kural('email', 'Email adresi', 'gerekli|eposta'));
bu senaryonun "kural" olarak belirtilmiş hali şöyle olacaktır:
$fdo->kural('parola', 'Parola', 'gerekli|ara_uzunluk[6,12]|rakam');
Şimdi de bu kuralların tek tek sınıf içerisine eklenmiş haline göz atalım:
<?php
require './formDogrula/eb.formDogrula.php';
// yeni bir nesne oluşturuyoruz
$fdo = new formDogrula('form1', 'post');
// kurallar
$fdo->kural('kulAdi', 'Kullanıcı adı', 'gerekli|ara_uzunluk[5,10]|harf');
$fdo->kural('email', 'Email adresi', 'gerekli|eposta'));
$fdo->kural('parola', 'Parola', 'gerekli|ara_uzunluk[6,12]|rakam');
?>
Kuralları tek tek tanımlayabileceğiniz gibi, tek seferde tanımlamanız da mümkündür. Bunun için kurallar isimli metodu kullanabilirsiniz. Yukarıda 3 farklı kuralı "kural" metoduyla tek tek ekledik. İşte bu kuralların "kurallar" isimli metot ile aynı anda eklenmiş hali:
<?php
require './formDogrula/eb.formDogrula.php';
// yeni bir nesne oluşturuyoruz
$fdo = new formDogrula('form1');
// kurallar
$fdo->kurallar(
array('kulAdi', 'Kullanıcı adı', 'gerekli|ara_uzunluk[5,10]|harf'),
array('email', 'Email adresi', 'gerekli|eposta'),
array('parola', 'Parola', 'gerekli|ara_uzunluk[6,12]|rakam')
);
?>
Email listesi / Ne dediler / İletişim / Hakkında / Haritalar