Tekil Mesaj gösterimi
Alt 06 Ağustos 2005, 10:08   #23
goXXip
Guest
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Yüzdesi:(%)



Son olarak hash table lardan bahsedeyim. Bir Hash table oluşturmak için

hmake <tabloadı> <limit>

Örneğin;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
hmake goldenex 5

Yazdığımda Goldenex Tablosu oluşturacak ve 5 'in 10 Katı kadar yani 50 Datalık kapasitesi olacaktır. Eğer oraya 5 yerine 10 yazsaydım o zaman 100 Datalık bir tablo oluşturacaktı...

Eklediğimiz tabloya Kayıt Girebilmek için ise;

hadd <tabloadı> <item> <data>

Örneğin;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
hadd goldenex 1 [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

veya
Kod:   Kodu kopyalamak için üzerine çift tıklayın!
hadd goldenex web [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

şeklinde olabilir. Burada item; Data nın ID Numarasını ya da Terimini simgeliyor. Bu dataları çağırırken çok işimize yarayabilir.

Tabi Bu oluşturduğunuz tablo mirci kapatıp yeniden açtığınızda gidecektir. O yüzden bu tabloları kayıt etmemiz gerekiyor...

hsave <tabloadı> <dizin>

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
hsave goldenex goldenex.data

Datayı mIRC in ana dizinine yerleştirecektir..

Bunla da işimiz bitmiyor. Her açılışta bunu load etmemiz gerekiyor yani

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
on 1:start: { hmake goldenex | hload goldenex goldenex.data }

gibi.

Son olarak arama ve çağırmayı anlattıktan sonra ilk bölümü bitireceğim
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.


Dosyayı çağırmak için hget kullanılır.

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
$hget(goldenex,1)

i çağırdığınızda yukarıda ki [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] i çağıracaktır. Kod içinde bunu rahatlıkla kullanabilirsiniz. Fakat Tablolara yazdırmak istediğinizde ya da echo ile görüntülemek istediğinizde

[/code]$hget(goldenex,1).data[/code] Şeklinde çağırmanız gerekiyor.

Örneğin bir datanın tablonuzda olup olmadığını öğrenmek istiyorsunuz;

Alın size basit bir karaliste
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
;
Kod:   Kodu kopyalamak için üzerine çift tıklayın!
on 1:join:#: { ;Eğer Giren kişi KaraListe Tablosunda ise kanaldan at ve yasakla. if $hfind(karaliste,$nick,1,W) { ban $chan $nick 2 kick $chan $nick Kara Listemdesin } }

Bu karalisteyi şu şekilde düzenleyebiliriz...

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
on 1:start: { ;Eğer karaliste.data dosyası bilgisayarımda mevcut değilse if !$findfile($mircdir,karaliste.data,1) { ;KaraListe Tablosu oluştur ve kayıt et hmake karaliste 10 hsave karaliste karaliste.data } ;Aksi taktirde Var olan dosyayı belleğe al ve kullan else { hmake karaliste hload karaliste karaliste.data } } alias karaliste { if $1 == ekle && $2 { if !$hfind(karaliste,$2,1,W) { hadd karaliste $r(0,99999) $2 hsave karaliste karaliste.data } else echo Listenizde bu kişi mevcut... } elseif $1 == sil && $2 { if !$hfind(karaliste,$2,1,W) { hdel karaliste $hfind(karaliste,$2,1,W) hsave karaliste karaliste.data } else echo Listenizde böyle birisi yok... } elseif $1 == liste { var %:l = 1 while %:l <= $hget(karaliste,0).item { echo -a %:l $hget(karaliste,%:l).data inc %:l } } else { echo -a Eklemek için /karaliste ekle nick echo -a Kaldırmak için /karaliste sil nick echo -a Listelemek için /karaliste liste } }

Devam edecek
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.


Dipnot: Hiç birini denemedim
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.

 
Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
sohbet odaları eglen sohbet sohbet