Form Kontrolleri – 3

Form kontrolleri ile ilgili yazı dizisinin son ayağı içerik id leri. Web uygulamasında bulunan tüm veritabanı kayıtları için benzersiz birer id yada kimlik numarası bulunur. Tabii ki bu olmazsa olmaz bir şart değil, kullanılmayadabilir. Kullanımının avantajları ise; kolay ulaşım, kolay işlem görme, hızlı yükleme ve hata olaslığını en aza indirme olarak sıralanabilir. Basit bir örnek; listelenen haber içeriklerinin özetlerinden bir tanesinin detaylarını görmek isteyen kullanıcı ilgili linke tıkladığında, haberin başlığını çağırmaktansa kayıt numarasını çağırmak çok daha mantıklıdır ki bu numara, 201 gibi bir tamsayıdır. Sayfa bağlantısı ise aşağıdaki gibidir;
http://www.ornek.com?haberid=201
Yapacağımız kontrol ise bağlantı ile gönderilen bilginin ($_REQUEST, $_GET vs ile…) kontrolüdür. Yapılacak kontrol ise bilginin sayısal bir değer olup olmadığıdır. Fonksiyon kodları:

/**
* check_id_number();
* Check if a string is in valid id.
* Returns true if valid, false otherwise.
* @author Taylan Aktepe (http://www.taylanaktepe.com)
*/
function check_id_number($id = 0) {
$valid_id = preg_replace('/[s]+/', '', $id); // Clean white space
$valid_id = ($valid_id != '' && preg_match('/^[d]+$/', $valid_id) ? intval($valid_id) : 0);
if ($valid_id > 0)
return true;
}
echo 'Check id number (1):'. check_id_number('123');
echo '<br />';

Yapılan işlem oldukça basit: Değerin sayısal olup olmadığı kontrol ediliyor, şayet değilse 0 değeri atanıyor. Ardından ise değerimiz 0 dan büyükse true değeri döndürülüyor.
Bu bölüm dizinin son yazısıydı. 3 bölümde de temel kontrolleri yapmaya/açıklamaya çalıştım. Bunları örnek olarak diğer birçok kontrolü yapmak mümkün. Umarım yararlı olmuştur. Açıkçası benim işlerimi kolaylaştıracak, güzel bir kod gurubu oluştu.
İyi çalışmalar!

Etiketle ve Paylaş:

  • Digg
  • del.icio.us
  • Mixx
  • Google Bookmarks
  • BlinkList
  • blogmarks
  • Blogosphere News
  • Fark
  • Netvouz
  • NewsVine
  • Reddit
  • Simpy
  • Slashdot
  • SphereIt
  • StumbleUpon
  • Technorati
  • Diigo
  • Facebook
  • FriendFeed
  • LinkedIn
  • Ping.fm
  • Sphinn
  • Yahoo! Bookmarks
  • Yahoo! Buzz
  • eKudos
  • Netvibes
  • Twitter

Yorum Gönder

Kullanılabilir XHTML etiketleri:: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>