[Linux-programlama] Re: php de overloading yapmak.

---------

New Message Reply About this list Date view Thread view Subject view Author view Attachment view

From: Zekeriye Bozkurt (zekeriye@hotmail.com)
Date: Tue 24 Jul 2007 - 14:21:55 EEST


function __setkey() de this->get_all_data_from('database');
 
satırı users nesnesinin istediğiniz özelliklerine atama yapiyor mu ? Yapmıyorsa ;
 this->username=...
 this->password=...
 this->realname=...
ile atamalarını yapmak gerekiyor ..
 
Zekeriya BOZKURT

From: mcbayrak@anadolu.edu.trTo: Linux-programlama@liste.linux.org.trDate: Tue, 24 Jul 2007 11:35:29 +0300Subject: [Linux-programlama] php de overloading yapmak.

şöle birşey yapmak istiyorum. Elimde bir sınıf var. bunun niteliklerinden birine atama yapılınca (id adlı niteliğe) diğer niteliklerde vertabanından otomatik olarak çekilerek tamamlansın. yani şöyle
============================================
class users {
var id;
var username;
var password;
var realname..
..
..
..
}
$owner = new users;
$owner->id = 5; // <- bu komut verildiği anda veritabanından id' si 5 olan kullanıcının bütün özellikleri alınsa...
echo $owner->realname; // <- daha sonra bu özellikleri rahatça kullansam
============================================================
bu yönteme overloading deniyormuş. fakat nasıl yapıldığını anlamadım yada beceremedim. users sınıfının içine şöyle bir eklemede bulundum
============================================================
function __set($key,$value) {
if ($key='id') { // eğer atama yapılan değişkenin adı id ise..
this->db->query("select * from users where id = $key");
$this->get_all_data_from('database'); // bu ve üstündeki satır veritabanından id si $key olan kullanıcının bilgilerini alıyor.
}
}
============================================================
fakay hiçbir işe yaramadı?? neyi yanlış yapıyorum? (bu arada kontrol ettim php sürümüm 5.2.3)

bu konuda bilgisi olan biri beni biraz aydınlatabilirse çok sevinirim.
_________________________________________________________________
Live.com'u deneyin: çevrimiçi dünyanızı bir araya getirin; haberler, spor, hava durumu ve çok daha fazlası.
http://www.live.com/getstarted

_______________________________________________
Linux-programlama mailing list
Linux-programlama@liste.linux.org.tr
http://liste.linux.org.tr/mailman/listinfo/linux-programlama


New Message Reply About this list Date view Thread view Subject view Author view Attachment view

---------

Bu arsiv hypermail 2.1.2 tarafindan uretilmistir.