Joomla Kodlarına Giriş (Bölüm 6)

Real9

Katılımcı Üye
1 Kas 2009
322
0
Şimdi mainFrame sınıfından sonra en çok kullanacağımız sınıf olan mosHTML sınıfını anlatalım. mosHTML sınıfı içerisindeki fonksiyonlarla html formları oluşturmak oldukça kolay olacaktır.

İlk fonksiyonumuz olan makeOption fonksiyonumuz sayesinde birden çok seçenekli bir form üretebiliriz. Örneğin; bir form bileşeni yapıyoruz ve bu bileşen içerisinde "Okul Durumu" etiketinde bir seçeneğimiz olsun ve bu etiket için seçeneklerimizi oluşturalım.

//Bir dizi oluşturuyoruz. $okuldurumu = array(); //Bu dizinin elemanlarını $okuldurumu[] ile oluşturalım. $okuldurumu[] = mosHTML::makeOption('1', 'Okur-Yazar Değil'); $okuldurumu[] = mosHTML::makeOption('2', 'İlkokul'); $okuldurumu[] = mosHTML::makeOption('3', 'Ortaokul'); $okuldurumu[] = mosHTML::makeOption('4', 'Lise'); $okuldurumu[] = mosHTML::makeOption('5', 'Üniversite');

Bu kodlardan da anlaşılacağı üzere makeOption kullanımı;

mosHTML::makeOption('değer', 'Gösterilecek Yazı'); şeklindedir.

Formumuzda okul durumunu göstermek istiyorsak selectList fonksiyonuna $okuldurumu dizisini göndermemiz gerekiyor;

$okul = mosHTML::selectList($okuldurumu, 'okuldurumu', 'class=inputbox', 'value', 'text');

ve son olarak $okul değerini gösterelim.

echo "Okul Durumu: ".$okul;

Böylece yaptığımız formumuza bir alan yaptık. Burada hemen selectList fonksiyonundan bahsedelim.
Kullanımı şu şekildedir;

mosHTML::selectList('listelenecek değerler', 'bu değerlerin formdaki değeri', 'varsa ek html kodları', 'value', 'text', 'daha önceden bir değer verilmişse o');

Daha önceden bir değer verilmişse fonksiyonda belirtilen yere onu koyarsanız oluşturulan listede o seçilmiş olarak (selected) gelecektir.

Bir diğer fonksiyonumuz integerSelectList fonksiyonu olup belli bir değerden başlayıp bir değere kadar belli aralıklarla herhangi bir değeri oluşturmamızı sağlar. Örnekle açıklayacak olursak; bir bileşenimiz var ve burada sıralanan linklerimiz olsun. Bu linklerin sayısını değiştirecek bir seçenek oluşturalım. Bu seçenekte ilk rakam 10 olsun ve 100 e kadar 10 ar 10 ar artarak gitsin. Kodumuz şu şekilde olacaktır;

$siralama = mosHTML::integerSelectList(10, 100, 10, 'siralama', 'class=inputbox'); echo $siralama;

Eğer 5 er li artmasını isteseydik;

$siralama = mosHTML::integerSelectList(10, 100, 5, 'siralama', 'class=inputbox'); echo $siralama;

şeklinde bir kod yazacaktık. Aynı selectList fonksiyonunda olduğu gibi integerSelectList fonksiyonunda da eğer daha önceden seçilmiş bir değer varsa onu seçili olarak getirmek için;

$siralama = mosHTML::integerSelectList(10, 100, 10, 'siralama', 'class=inputbox', 'seçili değer'); echo $siralama;

şeklinde bir kod kullanmamız gerekecektir.

Bir diğer fonksiyonumuz monthSelectList fonksiyonudur. Bu fonksiyon sayesinde kolayca aylardan oluşan bir liste yapmamız mümkündür. Örneğin;

$aylar = mosHTML::monthSelectList('aylar', 'class=inputbox'); echo $aylar;

Bir diğer fonksiyon olan treeSelectList ile alt dalları olan bir diziyi seçme kutusuna kolayca yerleştirmek mümkündür. Bu dalların ana dallarının değerlerini sql ile oluştururken 'parent' olarak belirtmek zorundayız. Fonksiyonun kullanımı buradan sonra oldukça kolaydır. Göstermek istediğimiz dalın id ve ana dal değerini 'parent' olarak bir dizi içerisinde göndermemiz gerekiyor. Bu dizinin adı $dizi olsun. Örneğin;

$dalgoster = mosHTML::treeSelectList( $dizi, 'orada gosterilen liste öğesinin id numarası', '', 'dallar', 'class=inputbox', 'value', 'text', 'seçili dal' ); echo $dalgoster;

Bu fonksiyon biraz karışık gibi gelebilir. PHP ve MySQL konusunda biraz uzman olmanız fonksiyonu kullanmanız adına oldukça faydalı olacaktır.

Bir diğer ve güzel fonksiyon yesnoSelectList fonksiyonudur. Kullanımı oldukça kolay olup html sayfası görüntülendiğinde kişiye 2 seçenek sunar. Örneğin;

$evlimisin = mosHTML::yesnoSelectList('evlimisin', 'class=inputbox', 'daha onceden seçilmiş değer'); echo $evlimisin;

Bu fonksiyonu şu şekilde de kullanabiliriz;

$cinsiyet = mosHTML::yesnoSelectList('cinsiyet', 'class=inputbox', 'Erkek', 'Bayan', 'daha önceden seçilmiş değer'); echo $cinsiyet;

Yukarıdaki fonksiyonu radio olarak göstermek istersek eğer radioList fonksiyonu bizim işimizi gayet iyi görecektir. Fonksiyonun kullanımı şöyledir;

//Dizimizi oluşturalım $medenihal = array( mosHTML::makeOption( '0', 'Evli' ), mosHTML::makeOption( '1', 'Bekar' ), mosHTML::makeOption('2', 'Dul') ); $durum = mosHTML::radioList($medenihal, 'durum', 'class=inputbox', 'daha onceden seçilmiş değer', 'value', 'text'); echo $durum;

Buna benzer bir radio fonksiyonu ile 2 seçenekli seçim yaptırabiliriz. Bunun için yesnoRadioList fonksiyonunu kullanabiliriz. Örneğin;

$evlimisin = mosHTML::yesnoRadioList('evlimisin', 'class=inputbox'); echo $evlimisin;

Veya bunu şöyle de kullanabiliriz;

//Kahvaltı yapma zamanı $kahvaltiyapma = mosHTML::yesnoRadioList('kahvalti', 'class=inputbox', 'daha önceden seçili olan değer', 'Sabah', 'Aksam');

Bu kod ile kişiye kahvaltıyı sabah mı yoksa akşam mı yaptıgını sorabiliriz. Sadece bir tanesini seçebilecektir.

Bir diğer fonksiyonumuz cleanText fonksiyonu olup bu fonksiyona gönderdiğimiz bir metnin içerisindeki çeşitli html kodlarını ayıklayarak bize temizlenmiş bir metin vermesidir. Örneğin;

$text = '<a href="index.php">Link</a><script language="text/javascript"></script>';

Bu metni;

$text = mosHTML::cleanText($text);

yapar ve;

echo $text;

yaparsanız, yazdığımız kod ile gösterilen kod arasındaki farkı görür, cleanText fonksiyonunun ne yapmaya çalıştığını daha iyi anlarsınız.
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.