MMCN.ORG

Joomla, iPhone, iPad, Teknoloji Blogu

iPTT Türkiye Kanal 109 Turkuaz

Pzt06022012

Son Güncelleme23:25:06

Geri Joomla Üyelik Formuna Ek Alan Ekleme

Üyelik Formuna Ek Alan Ekleme

 

Joomla'nın standart üye kayıt formu bildiğimiz gibi gayet kısıtlı sorgu alanları içeriyor, bu nedenle fazladan bir kaç alan eklemek için ya Community Builder üye profil bileşenini kullanıyor yahutta bir başka form bileşenine ihtiyaç duyuyoruz. Halbuki bir kaç fazladan ek alan için ayrı bir bileşen kullanmadan da bu işe çözüm bulabiliriz. Joomlamızın çekirdek 3 dosyasında yapacağımız bu değişiklikle, üye kayıt formumuza nasıl ek alanları ekleyeceğimizi göreceğiz. Örneğimizde, kayıtta üyelerimizden ek olarak "meslek" ve "telefon no" eklemek suretiyle bu işlemin nasıl yapılacağını sizlerle paylaşmak istiyorum. Öncelikle veritabanımızdaki üye bilgilerinin tutulduğu tablomuz olan "jos_users" tablosu içine ek iki tane alan eklememiz lazım. Bunu da aşağıdaki sql sorgusunu veritabanımıza girip "SQL" butonuna basarak sorgu penceresine akleyip çalıştıralım.

{xtypo_code}ALTER TABLE jos_users ADD meslek VARCHAR (100) NOT NULL AFTER name; ALTER TABLE jos_users ADD telefon VARCHAR (100) NOT NULL AFTER meslek;{/xtypo_code}

Görüldüğü gibi kullanıcının adından hemen sonra meslek adında bir alan ekliyor ve ikinci sorguda da meslek alanından sonra telefon alanını ekliyoruz. Şimdi joomla dosyalarımızda yapacağımız değişiklikleri görelim. "libraries/joomla/database/table/user.php" dosyasını açalım ve aşağıdaki kod kümesini bulalım.

{xtypo_code}var $name            = null; /** * The login name * * @var string */{/xtypo_code}

Hemen bu kodumuzun ardına aşağıdaki kod kümesini ekleyelim.

{xtypo_code}var $meslek= null; var $telefon= null;{/xtypo_code}

Şimdi bir diğer dosyamızdaki değişikliği yapmak üzere, "components/com_user/views/register/tmpl/default.php" dosyasını açalım ve aşağıdaki kod kümesini bulalım.

{xtypo_code}<tr> <td width="30%" height="40"> <label id="namemsg" for="name"> <?php echo JText::_( 'Name' ); ?>: </label> </td> <td> <input type="text" name="name" id="name" size="40" value="<?php echo $this->user->get( 'name' );?>" maxlength="50" /> * </td> </tr>{/xtypo_code}

Bu kodlarımızın hemen ardına aşağıdaki kodları ekleyelim.

{xtypo_code}<tr> <td width="30%" height="40"> <label id="meslekmsg" for="meslek"><?php echo JText::_( 'Meslek' ); ?>:      </label>   </td> <td> <input type="text" name="meslek" id="meslek" size="40" value="<?php echo $this->user->get( 'meslek' );?>" maxlength="50" /> *     </td> </tr> <tr> <td width="30%" height="40"> <label id="telefonmsg" for="telefon"><?php echo JText::_( 'Telefon' ); ?>:      </label>   </td> <td> <input type="text" name="telefon" id="telefon" size="40" value="<?php echo $this->user->get( 'telefon' );?>" maxlength="50" /> *     </td> </tr>{/xtypo_code}

Son olarak "components/com_user/views/user/tmpl/form.php" dosyasında aşağıdaki kod kümesini bulalım.

{xtypo_code}<tr> <td width="120"> <label for="name"> <?php echo JText::_( 'Your Name' ); ?>: </label> </td> <td> <input type="text" id="name" name="name" value="<?php echo $this->user->get('name');?>" size="40" /> </td> </tr>{/xtypo_code}

Bu kodların hemen ardına da aşağıdaki kodlarımızı ekleyelim ve her üç dosyamızı kaydedip bulundukları dizinlere atalım.

{xtypo_code}<tr> <td width="120"> <label for="meslek"> <?php echo JText::_( 'Meslek' ); ?>: </label> </td> <td> <input type="text" id="meslek" name="meslek" value="<?php echo $this->user->get('meslek');?>" size="40" /> </td> </tr> <tr> <td width="120"> <label for="telefon"> <?php echo JText::_( 'Telefon' ); ?>: </label> </td> <td> <input type="text" id="telefon" name="telefon" value="<?php echo $this->user->get('telefon');?>" size="40" /> </td> </tr>{/xtypo_code}

Böylelikle kayıt formumuza ek alanlar olan, "telefon" ve "meslek" isimli iki tane alan eklemiş oluyoruz. Aşağıdaki resimde de yaptığımız işlemlerin sonucunu görebiliriz. Bu şekilde istediğiniz kadar alan ekleyebilirsiniz, yeterki veritabanında gerekli alanları oluşturup bu şekilde dosyalarımızdaki değişiklikleri de düzgün bir şekilde yapalım. Hepinize kolay gelsin.

Böylelikle kayıt formumuza ek alanlar olan, "telefon" ve "meslek" isimli iki tane alan eklemiş oluyoruz. Aşağıdaki resimde de yaptığımız işlemlerin sonucunu görebiliriz. Bu şekilde istediğiniz kadar alan ekleyebilirsiniz, yeterki veritabanında gerekli alanları oluşturup bu şekilde dosyalarımızdaki değişiklikleri de düzgün bir şekilde yapalım. Hepinize kolay gelsin.

uye-kayit-ek-alanlar

Not: Anlatım joomla 1.5.10 sürümünde denenmek suretiyle hazırlanmıştır konu hakkında forumdaki tartışma alanımız

1 Yorum

  1. çok güzel bir anlatım, elinize sağlık.

Üye olmayan ziyaretçilerin yorumları yönetim tarafından kontrol edildikten sonra yayınlanır.