IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası
  sohbet

 Kayıt ol  Topluluk
4Beğeni(ler)

Yeni Konu aç Cevapla
 
LinkBack Seçenekler Stil
Alt 01 Mart 2020, 22:43   #1
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Merak ettim .has .db




Selam. Bazı badnick rumuzları .has bazıları da .db uzantılı dosyalara eklendigini biliyorum.
.has a eklenenler rumuzlar data numarası ile ekleniyor
.db e eklenenler de yine aynı sekilde data no ilemi ekleme yapıyor acaba? Eger db uzantısın da data no'yu eklemiyorsa mantıken bu uzantıya sahip dosyaya eklemek daha mantıklı geliyor bana.
Bu iki uzantılı dosya arasında bir fark varmı? Varsa nedir merak ettim.


Konu Hesapsiz33 tarafından (01 Mart 2020 Saat 22:45 ) değiştirilmiştir.
 
Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
sohbet odaları reklam ver Benimmekan Mobil Sohbet
Alt 02 Mart 2020, 04:08   #2
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: Merak ettim .has .db




Dosya seçimi ve içeriği eklentiyi kodlayan kişinin tercihine kalmış bir olay.
Yani .has .db olmasının mirc scripting için pek önemi olmuyor.

 
Alıntı ile Cevapla

Alt 02 Mart 2020, 09:40   #3
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: Merak ettim .has .db




Anladım.
Bu hash korumasının en kötü yanı eklenen rumuzun data numaralarınıda ekliyor olması sanırım.
20854843848
bb50274d20b2c99c05d gibi dataları eklemese daha iyi olurmuş
Çünkü dosyaya 100 rumuz eklesen bu sayı 200 oluyor data yüzünden. Yani demek istedigim extra fazlalık.
Bilgilendirme için tşkler.

 
Alıntı ile Cevapla

Alt 02 Mart 2020, 14:45   #4
Çevrimiçi
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: Merak ettim .has .db




Hesapsiz33 Nickli Üyeden Alıntı
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
Anladım.
Bu hash korumasının en kötü yanı eklenen rumuzun data numaralarınıda ekliyor olması sanırım.
20854843848
bb50274d20b2c99c05d gibi dataları eklemese daha iyi olurmuş
Çünkü dosyaya 100 rumuz eklesen bu sayı 200 oluyor data yüzünden. Yani demek istedigim extra fazlalık.
Bilgilendirme için tşkler.


Rakamların anlamı şöyle örnek vereyim mesela 123 olarak bir item verisi var sen bu item verisine 1 tane veri ekleyebilirsin o yüzden benzersiz olması gerekiyor.



Mantığı şöyledir hash tabloların


[Tablo İsmi]

Item | Data



Tablo ismi Liste olsun
Item AdSoyad olsun
Data İsmin Soyismin olsun


/hadd -sm Liste AdSoyad İsmin Soyismin


buradaki -s geri bildirim vermeye yarıyor -m ise tablo yoksa tablo oluşturuyor.


Bu işlemi yaptıktan sonra tabloya veri eklenir.


//echo -a $hget(liste,adsoyad)


Yaptığında data kısmını görürsün


mesela tekrar aynı iteme veri eklemeye çalışınca veriyi ekler ama önceki verinin üzerine ekler yani tabloda yine 1 tane veri olur 2. veri olarak eklenmez.


Ek olarak txt okuma mantığı ile hash tablosunun okuma mantığı farklıdır


- txt dosyadan okumak için mirc önce dosyayı açıyor okuyor tekrar kapatıyor.
- hash tabloda ise veriler belleğe kaydedilir mirc bellekten okur. O yüzden çok hızlıdır.



Açıklama yapma nedenim extra fazlalık durumunun söz konusu olmadığını belirtmek için.



Detaylı anlatım:


[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

 
Alıntı ile Cevapla

Alt 05 Mart 2020, 21:58   #5
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: Merak ettim .has .db




Alper Nickli Üyeden Alıntı
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
Rakamların anlamı şöyle örnek vereyim mesela 123 olarak bir item verisi var sen bu item verisine 1 tane veri ekleyebilirsin o yüzden benzersiz olması gerekiyor.



Mantığı şöyledir hash tabloların


[Tablo İsmi]

Item | Data



Tablo ismi Liste olsun
Item AdSoyad olsun
Data İsmin Soyismin olsun


/hadd -sm Liste AdSoyad İsmin Soyismin


buradaki -s geri bildirim vermeye yarıyor -m ise tablo yoksa tablo oluşturuyor.


Bu işlemi yaptıktan sonra tabloya veri eklenir.


//echo -a $hget(liste,adsoyad)


Yaptığında data kısmını görürsün


mesela tekrar aynı iteme veri eklemeye çalışınca veriyi ekler ama önceki verinin üzerine ekler yani tabloda yine 1 tane veri olur 2. veri olarak eklenmez.


Ek olarak txt okuma mantığı ile hash tablosunun okuma mantığı farklıdır


- txt dosyadan okumak için mirc önce dosyayı açıyor okuyor tekrar kapatıyor.
- hash tabloda ise veriler belleğe kaydedilir mirc bellekten okur. O yüzden çok hızlıdır.



Açıklama yapma nedenim extra fazlalık durumunun söz konusu olmadığını belirtmek için.



Detaylı anlatım:


[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Bilgilendirme icin tşk ederim. Verdiginiz örnekten yola cıkarak yapmaya calıstım ama yapamadım
Atılan nick ve maskı gösteriyor fakat data numarasını göstertemedim bi türlü.
Su sekilde ekledim $hget(badnick,0).item yapınca listeyi gösteriyor sadece
Fakat sıfırı 1 yapınca ilk data numarasını gösterebiliyorum
Oysa her atılan rumuzun kendine ait data numarasını göstermesi lazım degil mi nerde yanlıs yapıyorum anlamadım

 
Alıntı ile Cevapla

Alt 05 Mart 2020, 22:59   #6
Çevrimiçi
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: Merak ettim .has .db




Hesapsiz33 Nickli Üyeden Alıntı
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
Bilgilendirme icin tşk ederim. Verdiginiz örnekten yola cıkarak yapmaya calıstım ama yapamadım
Atılan nick ve maskı gösteriyor fakat data numarasını göstertemedim bi türlü.
Su sekilde ekledim $hget(badnick,0).item yapınca listeyi gösteriyor sadece
Fakat sıfırı 1 yapınca ilk data numarasını gösterebiliyorum
Oysa her atılan rumuzun kendine ait data numarasını göstermesi lazım degil mi nerde yanlıs yapıyorum anlamadım


tabiki var



$hget(badnick,0).item



bu kısmı



$hget(badnick,1).item yapınca 1. item,
$hget(badnick,1).data yapınca 1. data


verisine ulaşırsın ne yapmak istediğini anlamadım ama anladığım şekilde cevap verdim.

 
Alıntı ile Cevapla

Alt 06 Mart 2020, 00:20   #7
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: Merak ettim .has .db




Alper Nickli Üyeden Alıntı
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
tabiki var



$hget(badnick,0).item



bu kısmı



$hget(badnick,1).item yapınca 1. item,
$hget(badnick,1).data yapınca 1. data


verisine ulaşırsın ne yapmak istediğini anlamadım ama anladığım şekilde cevap verdim.

Badnick has dosyasında olan biri kanala girdigi zaman
Atılan rumuz ahmet - data : numarası ????? Burdaki soru isaretinin oldugu yere atılan rumuzun data numarasınıda yansıtmaya calısıyorum.
Dediginiz gibi $hget(badnick,1).data yapınca has dosyasındaki ilk data numarasını yansıtıyor fakat diger atılanlan rumuzların kendine ait data numaralarını yansıtmıyor. 1 yazan yer sabit mi kalmalı yoksa?


Konu Hesapsiz33 tarafından (06 Mart 2020 Saat 00:22 ) değiştirilmiştir.
 
Alıntı ile Cevapla

Alt 06 Mart 2020, 00:45   #8
Çevrimiçi
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: Merak ettim .has .db




Hesapsiz33 Nickli Üyeden Alıntı
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
Badnick has dosyasında olan biri kanala girdigi zaman
Atılan rumuz ahmet - data : numarası ????? Burdaki soru isaretinin oldugu yere atılan rumuzun data numarasınıda yansıtmaya calısıyorum.
Dediginiz gibi $hget(badnick,1).data yapınca has dosyasındaki ilk data numarasını yansıtıyor fakat diger atılanlan rumuzların kendine ait data numaralarını yansıtmıyor. 1 yazan yer sabit mi kalmalı yoksa?


Sen kodu at buraya ona göre ne yapman gerektiğini söyleyeyim.

 
Alıntı ile Cevapla

Alt 06 Mart 2020, 00:59   #9
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: Merak ettim .has .db




Alper Nickli Üyeden Alıntı
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
Sen kodu at buraya ona göre ne yapman gerektiğini söyleyeyim.

Normalde bu kodu kullanıyorum sizinde vermis oldugunuz muaf eklentisi ile beraber.

on *:start:{ $iif(!$isfile(badnick.tprk),.write badnick.tprk) | .hmake badnick 100 | .hload badnick badnick.tprk }



on *:join:*: {
if $chan == #sohbet {
if $hfind(badnick,$nick,1,W).data {
if $read(muafnick.txt,w,$nick) { msg #geveze35 Muaf nick girişi; $nick | return }
kick # $nick 1Nick değiştirip (/nick yeninick) tekrar kanala giriş yapabilirsiniz..
mode $kanal +b $nick
if !$hget(bdnck,$nick) {
.hinc -msu20 bdnck $nick
msg # $chan kanalında [ JOIN ] $nick nicki badnick olarak tespit edildi. $+([,$chr(32),$hget(badnick,$hfind(badnick,$nick,1,W). data),$chr(32),])
}
}
}
}
on *:nick:{
if $hfind(badnick,$newnick,1,W).data {
if $read(muafnick.txt,w,$newnick) { msg # Muaf nick değişimi; $nick >> $newnick | return }
if $read(muafnick.txt,w,$nick) { msg # Muaf nick değişimi; $nick >> $newnick | return }
msg $bilgiKanal [ NICK ] $newnick nicki badnick olarak tespit edildi. $+([,$chr(32),$hget(badnick,$hfind(badnick,$newnick,1, W).data),$chr(32),])
var %:c $regsubex($str(-,$comchan($newnick,0)),/./g, $iif($regex($nick($comchan($newnick,\n),$me).pnick ,/(%|@|&|~\.)/i),$comchan($newnick,\n) $chr(32)))
var %c = 1 | while %c <= $token(%:c,0,32) {
mode $token(%:c,%c,32) +b $newnick | kick $token(%:c,%c,32) $newnick 1Nick değiştirip (/nick yeninick) tekrar kanala giriş yapabilirsiniz..
inc %c
}
}
}
on *:text:*:#: {
if !$regex($chan,/^( $+ $komutKanal $+ )$/i) { halt }
if ($regex($nick(#,$nick).pnick,[&.~.@])) {
if $regex($1,/^[!\.]badnick$/Si) {
if $regex($2,/^ekle$/Si) {
if (!$3) { msg # Lütfen nick belirtiniz | return }
if $hfind(badnick,$strip($3),0,W).data { msg # Eklemeye çalıştığınız badnick zaten $+([,$chr(32),$hget(badnick,$hfind(badnick,$strip($3), 1,W).data),$chr(32),]) maskesi ile uyuşmakta. | return }
if $read(muafnick.txt,w,$3) { msg # 2Bu kişi muaf nick listemde yer almakta. | return }
var %n = $left($calc($ctime * $rand(1000,9999)),7)
.hadd -m badnick %n $strip($3)
.hsave -o badnick badnick.tprk
msg # $strip($3) Badnick listesine eklendi.
}
if $regex($2,/^s[ıiİ]l$/Si) {
if (!$3) { msg # Lütfen nick belirtiniz | return }
if !$hfind(badnick,$strip($3),0,W).data { msg # Bad nick listesinde bulunmamaktadir. | return }
.hdel -m badnick $hfind(badnick,$strip($3),1,W).data
.hsave -o badnick badnick.tprk
msg # $strip($3) Badnick listesinden silindi.
}
if $regex($2,/^tara$/Si) {
if (!$3) { msg # Lütfen nick belirtiniz | return }
if $read(muafnick.txt,w,$3) { msg # 2Bu kişi muaf nick listemde yer almakta. | return }
if !$hfind(badnick,$strip($3),0,W).data { msg # Badnick listem'de $strip($3) ait bir mask yok. | return }
msg # Nick: $strip($3) - 4 Mask: $+([,$chr(32),$hget(badnick,$hfind(badnick,$strip($3), 1,W).data),$chr(32),])
}
if ($2 == muaf) {
if (!$3) { msg # Lütfen nick belirtiniz | return }
if $read(muafnick.txt,w,$3) { msg # $3 muaf listesinden silindi. | write $+(-dl,$read(muafnick.txt,w,$3)) muafnick.txt | return }
msg # $3 muaf nick listesine eklendi.
write muafnick.txt $3
}
if $regex($2,/^l[ıiİ]st$/Si) {
if ($hget(badnick,0).data == 0) { msg # Badnick listesi boş. | return }
msg # Badnick listesi
msg # -
var %i = 1 | while (%i <= $hget(badnick,0).data) { msg # %i $+ .4) [ $hget(badnick,%i).data ] | inc %i }
msg # -
msg # Badnick listesi sonu
}
}
if $regex($1,/^[!\.]tara$/Si) {
if !$regex($2,/^#/Si) { msg # Lütfen #kanal belirtiniz | return }
if !$chan($2) { msg # $2 kanal'ında bulunmuyorum | return }
var %:tara = 1 | while %:tara <= $nick($2,0) {
if $hfind(badnick,$nick($2,%:tara),1,W).data && !$read(muafnick.txt,w,$nick($2,%:tara)) {
msg # [ TARAMA ] $nick($2,%:tara) nicki badnick olarak tespit edildi. $+([,$chr(32),$hget(badnick,$hfind(badnick,$nick($2,%: tara),1,W).data),$chr(32),])
mode $2 +b $nick($2,%:tara) | kick $2 $nick($2,%:tara) 4 Badnick! 1Nick değiştirip(/nick yeninick) tekrar kanala giriş yapabilirsiniz..
}
inc %:tara
}
msg # Toplam $nick($2,0) kişi için, $hget(badnick,0).data adet mask taraması yapıldı.
}
}
}

 
Alıntı ile Cevapla

Alt 06 Mart 2020, 01:37   #10
Çevrimiçi
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: Merak ettim .has .db




Hesapsiz33 Nickli Üyeden Alıntı
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
Normalde bu kodu kullanıyorum sizinde vermis oldugunuz muaf eklentisi ile beraber.

on *:start:{ $iif(!$isfile(badnick.tprk),.write badnick.tprk) | .hmake badnick 100 | .hload badnick badnick.tprk }



on *:join:*: {
if $chan == #sohbet {
if $hfind(badnick,$nick,1,W).data {
if $read(muafnick.txt,w,$nick) { msg #geveze35 Muaf nick girişi; $nick | return }
kick # $nick 1Nick değiştirip (/nick yeninick) tekrar kanala giriş yapabilirsiniz..
mode $kanal +b $nick
if !$hget(bdnck,$nick) {
.hinc -msu20 bdnck $nick
msg # $chan kanalında [ JOIN ] $nick nicki badnick olarak tespit edildi. $+([,$chr(32),$hget(badnick,$hfind(badnick,$nick,1,W). data),$chr(32),])
}
}
}
}
on *:nick:{
if $hfind(badnick,$newnick,1,W).data {
if $read(muafnick.txt,w,$newnick) { msg # Muaf nick değişimi; $nick >> $newnick | return }
if $read(muafnick.txt,w,$nick) { msg # Muaf nick değişimi; $nick >> $newnick | return }
msg $bilgiKanal [ NICK ] $newnick nicki badnick olarak tespit edildi. $+([,$chr(32),$hget(badnick,$hfind(badnick,$newnick,1, W).data),$chr(32),])
var %:c $regsubex($str(-,$comchan($newnick,0)),/./g, $iif($regex($nick($comchan($newnick,\n),$me).pnick ,/(%|@|&|~\.)/i),$comchan($newnick,\n) $chr(32)))
var %c = 1 | while %c <= $token(%:c,0,32) {
mode $token(%:c,%c,32) +b $newnick | kick $token(%:c,%c,32) $newnick 1Nick değiştirip (/nick yeninick) tekrar kanala giriş yapabilirsiniz..
inc %c
}
}
}
on *:text:*:#: {
if !$regex($chan,/^( $+ $komutKanal $+ )$/i) { halt }
if ($regex($nick(#,$nick).pnick,[&.~.@])) {
if $regex($1,/^[!\.]badnick$/Si) {
if $regex($2,/^ekle$/Si) {
if (!$3) { msg # Lütfen nick belirtiniz | return }
if $hfind(badnick,$strip($3),0,W).data { msg # Eklemeye çalıştığınız badnick zaten $+([,$chr(32),$hget(badnick,$hfind(badnick,$strip($3), 1,W).data),$chr(32),]) maskesi ile uyuşmakta. | return }
if $read(muafnick.txt,w,$3) { msg # 2Bu kişi muaf nick listemde yer almakta. | return }
var %n = $left($calc($ctime * $rand(1000,9999)),7)
.hadd -m badnick %n $strip($3)
.hsave -o badnick badnick.tprk
msg # $strip($3) Badnick listesine eklendi.
}
if $regex($2,/^s[ıiİ]l$/Si) {
if (!$3) { msg # Lütfen nick belirtiniz | return }
if !$hfind(badnick,$strip($3),0,W).data { msg # Bad nick listesinde bulunmamaktadir. | return }
.hdel -m badnick $hfind(badnick,$strip($3),1,W).data
.hsave -o badnick badnick.tprk
msg # $strip($3) Badnick listesinden silindi.
}
if $regex($2,/^tara$/Si) {
if (!$3) { msg # Lütfen nick belirtiniz | return }
if $read(muafnick.txt,w,$3) { msg # 2Bu kişi muaf nick listemde yer almakta. | return }
if !$hfind(badnick,$strip($3),0,W).data { msg # Badnick listem'de $strip($3) ait bir mask yok. | return }
msg # Nick: $strip($3) - 4 Mask: $+([,$chr(32),$hget(badnick,$hfind(badnick,$strip($3), 1,W).data),$chr(32),])
}
if ($2 == muaf) {
if (!$3) { msg # Lütfen nick belirtiniz | return }
if $read(muafnick.txt,w,$3) { msg # $3 muaf listesinden silindi. | write $+(-dl,$read(muafnick.txt,w,$3)) muafnick.txt | return }
msg # $3 muaf nick listesine eklendi.
write muafnick.txt $3
}
if $regex($2,/^l[ıiİ]st$/Si) {
if ($hget(badnick,0).data == 0) { msg # Badnick listesi boş. | return }
msg # Badnick listesi
msg # -
var %i = 1 | while (%i <= $hget(badnick,0).data) { msg # %i $+ .4) [ $hget(badnick,%i).data ] | inc %i }
msg # -
msg # Badnick listesi sonu
}
}
if $regex($1,/^[!\.]tara$/Si) {
if !$regex($2,/^#/Si) { msg # Lütfen #kanal belirtiniz | return }
if !$chan($2) { msg # $2 kanal'ında bulunmuyorum | return }
var %:tara = 1 | while %:tara <= $nick($2,0) {
if $hfind(badnick,$nick($2,%:tara),1,W).data && !$read(muafnick.txt,w,$nick($2,%:tara)) {
msg # [ TARAMA ] $nick($2,%:tara) nicki badnick olarak tespit edildi. $+([,$chr(32),$hget(badnick,$hfind(badnick,$nick($2,%: tara),1,W).data),$chr(32),])
mode $2 +b $nick($2,%:tara) | kick $2 $nick($2,%:tara) 4 Badnick! 1Nick değiştirip(/nick yeninick) tekrar kanala giriş yapabilirsiniz..
}
inc %:tara
}
msg # Toplam $nick($2,0) kişi için, $hget(badnick,0).data adet mask taraması yapıldı.
}
}
}


$hget(badnick,$hfind(badnick,$nick,1,W).data)


Bu kısmı


$hfind(badnick,$nick,1,W).data


olarak kullanman gerek.

 
Alıntı ile Cevapla

Cevapla

Etiketler
dosya uzantısı


Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir)
 

Yetkileriniz
Konu Acma Yetkiniz Yok
Cevap Yazma Yetkiniz Yok
Eklenti Yükleme Yetkiniz Yok
Mesajınızı Değiştirme Yetkiniz Yok

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodu Kapalı
Trackbacks are Kapalı
Pingbacks are Açık
Refbacks are Açık


Benzer Konular
Konu Konuyu Başlatan Forum Cevaplar Son Mesaj
Merak ettiklerimiz...merak konuları Süslü Merak Ettikleriniz 0 21 Ekim 2008 15:15