Güvenli bir site yaparken dikkat etmemiz gereken en önemli noktalardan biri de kullanıcı girişlerini kontrol etmek ve doğrulamak. Her kullanıcının masum ve iyi niyetli olmadığını düşünerek sitemizi geliştirmeliyiz.
Aslında zor gibi görünen bu yöntemleri CakePHP ile çok kolay yapabiliyoruz. Modelleri tanımlarken $validate isminde bir değişken tanımlayıp gerekli kuralları orada belirtiyoruz.
|
var $validate = array(
| 'alanAdi' => array(
| 'rule' => 'kuralIsmi',
| 'required' => true,
| 'allowEmpty' => false,
| 'on' => 'create',
| 'message' => 'Hata Mesajı'
| )
| ); |
|
Şeklinde belirtiyoruz. Buradaki ‘rule’ parametresinin karşısına istediğimiz kuralı girebiliyoruz. Bunlardan bazıları:
alphaNumeric
Girilen değerin sadece harfler ve rakamlardan oluşması gerekir. Aksi takdirde message parametresiyle belirtilen hata mesajı alınır.
|
var $validate = array(
| 'kullanici_adi' => array(
| 'rule' => 'alphaNumeric',
| 'message' => 'Sadece harfler ve rakamlar kullanılabilir.'
| )
| ); |
|
Buradaki message parametresi ile kullanıcını veriyi hatalı girmesi sonucu göreceği mesajı yazıyoruz.
between
Girilen değerin karakter sayısının hangi aralıkta olacağı belirlenir.
|
var $validate = array(
| 'password' => array(
| 'rule' => array('between', 6, 20),
| 'message' => ''Şifreniz en az 6 en fazla 20 karakter olmalı"
| )
| ); |
|
date
Girilen değerin belirttiğimiz bir formatta bir tarih olmak zorundadır.
|
var $validate = array(
| 'kayit_yili' => array(
| 'rule' => 'date',
| 'message' => 'YY-MM-DD formatında bir tarih girin.',
| 'allowEmpty' => true
| )
| ); |
|
allowEmpty parametresi true olduğu zaman bu kısım boş bırakilabilir demektir.
email
Girilen değerin bir eposta adresi olmak zorundadır.
|
var $validate = array(
| 'email' => array(
| 'rule' => array('email', true),
| 'message' => 'Lütfen doğru e-posta adresi girin.'
| )
| ); |
|