Türkiye'nin En Eski Webmaster Forumu İyinet'e Hoşgeldiniz!

istediğim bir ülkeyi engellemek istiyorum

216

0
Onaylı Üye
Üye
Katılım
4 Ağustos 2006
Mesajlar
336
Açılan Konu
22
Tepki puanı
0
Bu kodları kaydedip tüm sayfalarda include ile çağırın. Ekteki malta iplerinin long türündeki karşılıklarını tutan veritabanını aynı dizine kopyalayın.

Kod:
<%
ip=request.servervariables("REMOTE_ADDR")        
IPsi=split(ip,".")
IPno=(Ipsi(0)*16777216)+(IPsi(1)*65536)+(IPsi(2)*256)+(IPsi(3))
    set bag= Server.CreateObject("ADODB.Connection")
    bag.open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & server.mappath("malta.mdb")     
    Set rs = Server.CreateObject("ADODB.Recordset")
    rs.Open "Select * from malta Where ip<=" & IPno & " AND ip2>=" & IPno, bag, 1, 3        
    if not rs.eof then Response.end        
rs.close
set rs=nothing
bag.close
set bag=nothing
%>
Diğer ülke aralıkları sayılarını isteyen olursa veriyim.
 

sistem

0
Onaylı Üye
Üye
Katılım
8 Temmuz 2005
Mesajlar
264
Açılan Konu
12
Tepki puanı
0
Konum
istanbul
GLOBAL.ASA içerigi
Kod:
 

216

0
Onaylı Üye
Üye
Katılım
4 Ağustos 2006
Mesajlar
336
Açılan Konu
22
Tepki puanı
0
Arkadaşım yanlış anlama. Üstteki kod için veritabanı yerine dizi oluşturuyordum, veritabansız kullanım için. Mesajını sonra gördüm.

Daha kolay istenen ülkeye çevrilebilir senin verdiğin kod, konuyu açan sadece Malta istediği için Malta'nın çevrilmiş ip'lerini atıyorum.

Benim veritabanında tüm ülke aralıklarının çevrilmiş ipleri olduğu için ben istediğimi rahat kullanabiliyorum. Senin verdiğin kod daha kullanışlı elinde bu liste olmayanlar için. İstediğin aralığı bulup, yazıyorsun.

Bunu istediğiniz yerden include ile çağırabilir(ilk satırdan çağırın) veya global.asa'ya fonksiyon olarak yazıp Session_OnStart'dan çağırabilirsiniz. (Sadece Malta için)
Kod:
<%

ip1=Array(1051525120,1121248448,1161299016,1346842624,1346854912,1347272704,1347772416,1348308992,1358144160,1358147520,1358286848,1358843904,1401878528,1425997824,1433868288,1433892864,1441316864,1441660928,1475112960,1489698816,3230140160,3239075840,3243441920,3245251328,3250331648,3261669376,3261743104,3264828672,3265142784,3265148928,3268173824,3274055168,3281928192,3286905600,3409802832,3560472576,3575079088,3575086176,3584401408,3584511808,3587817472,3641663488,3642142720,3642646528,3645353984,3645485056,3649699840,3649701120,3649709056,3649709312,3649709824,3649710336,3649710592,3650158592,3651706880)

ip2=Array(1051533311,1121248479,1161299023,1346846719,1346859007,1347276799,1347776511,1348313087,1358144191,1358147583,1358290943,1358847999,1401880575,1426014207,1433870335,1433894911,1441325055,1441669119,1475115007,1489731583,3230140415,3239076095,3243442175,3245251583,3250335743,3261673471,3261751295,3264828927,3265148671,3265150975,3268182015,3274055423,3281944575,3286905855,3409802847,3560480767,3575079103,3575086207,3584409599,3584511871,3587833855,3641667583,3642146815,3642650623,3645358079,3645489151,3649700159,3649708791,3649709287,3649709815,3649710079,3649710559,3649765375,3650162687,3651710975)

ip=request.servervariables("REMOTE_ADDR")        
IPsi=split(ip,".")
IPno=(Ipsi(0)*16777216)+(IPsi(1)*65536)+(IPsi(2)*256)+(IPsi(3))

for i=lbound(ip1) to ubound(ip1)
   if (ip1(i)<=ipno) AND (ip2(i)>=ipno) then
    exit for
    response.end
   end if
next
%>
 

sessizliktr

0
Onaylı Üye
Üye
Katılım
12 Temmuz 2004
Mesajlar
364
Açılan Konu
45
Tepki puanı
0
Arkadaşım yanlış anlama. Üstteki kod için veritabanı yerine dizi oluşturuyordum, veritabansız kullanım için. Mesajını sonra gördüm.

Daha kolay istenen ülkeye çevrilebilir senin verdiğin kod, konuyu açan sadece Malta istediği için Malta'nın çevrilmiş ip'lerini atıyorum.

Benim veritabanında tüm ülke aralıklarının çevrilmiş ipleri olduğu için ben istediğimi rahat kullanabiliyorum. Senin verdiğin kod daha kullanışlı elinde bu liste olmayanlar için. İstediğin aralığı bulup, yazıyorsun.

Bunu istediğiniz yerden include ile çağırabilir(ilk satırdan çağırın) veya global.asa'ya fonksiyon olarak yazıp Session_OnStart'dan çağırabilirsiniz. (Sadece Malta için)
Kod:
<%

ip1=Array(1051525120,1121248448,1161299016,1346842624,1346854912,1347272704,1347772416,1348308992,1358144160,1358147520,1358286848,1358843904,1401878528,1425997824,1433868288,1433892864,1441316864,1441660928,1475112960,1489698816,3230140160,3239075840,3243441920,3245251328,3250331648,3261669376,3261743104,3264828672,3265142784,3265148928,3268173824,3274055168,3281928192,3286905600,3409802832,3560472576,3575079088,3575086176,3584401408,3584511808,3587817472,3641663488,3642142720,3642646528,3645353984,3645485056,3649699840,3649701120,3649709056,3649709312,3649709824,3649710336,3649710592,3650158592,3651706880)

ip2=Array(1051533311,1121248479,1161299023,1346846719,1346859007,1347276799,1347776511,1348313087,1358144191,1358147583,1358290943,1358847999,1401880575,1426014207,1433870335,1433894911,1441325055,1441669119,1475115007,1489731583,3230140415,3239076095,3243442175,3245251583,3250335743,3261673471,3261751295,3264828927,3265148671,3265150975,3268182015,3274055423,3281944575,3286905855,3409802847,3560480767,3575079103,3575086207,3584409599,3584511871,3587833855,3641667583,3642146815,3642650623,3645358079,3645489151,3649700159,3649708791,3649709287,3649709815,3649710079,3649710559,3649765375,3650162687,3651710975)

ip=request.servervariables("REMOTE_ADDR")        
IPsi=split(ip,".")
IPno=(Ipsi(0)*16777216)+(IPsi(1)*65536)+(IPsi(2)*256)+(IPsi(3))

for i=lbound(ip1) to ubound(ip1)
   if (ip1(i)<=ipno) AND (ip2(i)>=ipno) then
    exit for
    response.end
   end if
next
%>

teşekkürler, bunu include ettiğimde maltadan giriş yapılmayacka değilmi?
 

216

0
Onaylı Üye
Üye
Katılım
4 Ağustos 2006
Mesajlar
336
Açılan Konu
22
Tepki puanı
0
Tüm sayfalarınızın ilk satırına include ederseniz daha iyi olur. Hiç bir şey yüklenmeden bu kod işlesin.
Evet, boş bir sayfayla karşı karşıya kalacaklar.

response.end'den sonra isterseniz,
responde.redirect ile yönlendirme yapın.

Hit boşa gitmesin benim siteye yönlendirin :p
 
Üst