Murat TATAR God saves lost souls , I save lost passwords

11Nis/110

Hacker Terimleri

Sniffer:Bilgisayar ağlarında veri trafiğini kontrol altında bulundurun bir araçtır.Atak yapan
kişi gizlice veri akışını izler ve gerektiğinde bu paketleri handle edebilir.Bu sayede birçok
metin şifreler snifferı kullananın eline geçer.

Spam Tool:Bir kullanıcıya isteği olmadan gönderilen reklam veya diğer amaçları gerçekleş-
tirmek üzere geliştirilmiş kimden gönderildiği kullanıcı tarafından anlaşılamayan emaillar
yollayan bir program türüdür.

Spoofer:Hackerların systemlere yetkili bir kullanıcıymış gibi kendilerini göstermelerini
yarayan bir programdır.Ençok kullanılan spoofing yöntemi smurfs ataklarıdır.Kullanıcı
iplerine durmadan paketler yollayan ve cevap aldığında o ip altına giremeye yarar.Ama
internet trafiğini gönderdiği flood(aşırı veri trafiği) sayesinde yavaşlatır.

War Dialer:Eskiden sık kullanılan telefon hatlarını tarayıp açık bulduğuna bağlanabilen
bu sayede hattın takılı olduğu modeme direk bağlanabilen bir araçtır.

Port Scanner:65536 tane porta bağlanma girişiminde bulunup hedef bilgisayarın
portlarının durumlarını hackerlara bildirmeye yarayan bir araçtır.

Word List: Brute Force uygulanan bir bilgisayara karşı denenecek şifrelerin bulunduğu
bir metin dosyasıdır.

Brute Force: Yetkisiz kullanıcıların giremediği bir şifreli sisteme hackerın elindeki wordlist
aracılığı ile şifreleri deneyerek bulmaya çalışan bir password cracking yöntemidir.

Flooder: internet bağlantısını hızlı pingler atarak yavaşlatan ve DoS atağına neden bir programdır.

Hijacker: kullanıcın browserındaki homepage olarak ayarlanan bölümleri porno siteler tarzı
site linklerini veren ve bunların değiştirilmesini önleyen bir nevi trojandır.

Keylogger: kendini startup a yerleştiren ve bazen gizleyen bir programdır.Amacı ise
bilgisayarınızda klavye kullanarak yazdığınız herşeyi bilgisayarınızda gizli bir text dosyasına
kopyalayan ve sonra bu keylogger ı size bulaştıran sahibine bu text dosyasını email olarak
yollaan bir programdır.

Packerosyaları sıkıştırmayan yarayan ve headerlarını şifrelemeye yarayan böylelikle trojan
serverlarının anti-virus ve anti-trojan programlarından koruyan bir araçtır.

MailBombers:Kullanıcının email kutusuna binlerce email atabilen ve gönderenin kaynağının
tam olarak görülmemesini sağlayan bir araçtır.

Worm:Türkçe anlamı solucan olan bu programlar tıpki virusler gibidir.Programcısının hayal
gücü ile sınırlı işler yapabilirler.Bu wormu yazan adamın bulduğu bir açık sayesinde kodlağı
bir worm kendisini bu açık sayesinde ve bu açığın olduğu bütün makinelere kopyalar verileri
silebilir,şifrelerinizi sahibine yollayabilir vs.......

Hostile Script: VBS, .WSH, .JS, .HTA, .JSE, .VBE dosya uazantılarina sahip bir text dosyasıdır.
çalıştırıldığı systemde istenmeyen çeşitli sorunlara yol açabilir.

Hostile ActiveX: kullanıcıların haberi olmadan yada bilinçsizce kabul ettikleri internetten sitelerden
bilgisayara yerleşip habersizce çalıştırılabilen hostile activexler harddiski silmeden,şifrelerin çalınmasından
ve daha bir çok sorunundan sorumlu olabilirler.

Exploit:Sistem açığı olarak bilinir.Hackerlar tarafından keşfedilen bu exploitler;güvenlik konsepti
yazıf sistemlere sızmayı sağlayan bir yoldur.Bu yolu kullanabilmek için yazılan script ve master program
ları ile exploitler lamerların ve script kiddieslerin kullanımına sunulur.

Dropper: kullanıcının bilgisayarında ftp server ı açarak çeşitli trojan ve viruslerin kullanıcın haberi
olmadan bilgisayarına inmesini sağlayan bir araçtır.

RAT: Türkçesi 'uzaktan yönetim aracı' olarak bilinen programlar kötü niyetli kullanıcılar tarafından
geliştirilerek kullanıcılardan habersiz barınabilen server dosyaları ile kullanıcının bilgisayarına tam
erişim sağlar.Hacker bu tip bir bağlantı sağlayabildiyse istediği türde bir zarar verebilir(donanımsal,
veya yazılım bazında)

DoS(Denial Of Service): bir programın veya bir sistemin askıya alınması yada komple kilitlenmesini
amaçlayan bir exploittir.Tutulabilecek paket sayısından çok daha fazla paket yollayarak(flood) yada
bozuk ve beklenmeyen yönlerde yollanarak sistemin devre dışı kalmasını sağlayan bir atak türüdür.
Genelde DoS, nuke olarak bilinir.

Malware:Kullanıcı bilgisi olamadan bilgisyarda çalışan bilgisayara zarar vermek amacı güden her
programa verilen genel bir addır.

Proxy:belirli servis sağlıyıcıları yada bizzat bir kullanıcın ip sine 80,8080 gibi portlardan bağlanıp
üstümüze geçirdiğimiz kullanıcın ip sine proxy denir.

Java: webmasterların sıkça kullandıkları java appetlerini çalıştırmaya yarayan bir programdır.

Cookie:Web sayfaları tarafından bilgisayarımıza habersizce bırakılan ve bir dahaki girişimizde
sayfanın bizi tanımasını sağlayan küçük txt dosyalarıdır.

P2P software: Kazaa,İmesh tarzı programlara verilen ve kullanıcıların karşılıklı birbirlerine
bağlanarak dosya alışverişinde bulunmalarını sağlayan bir program türüdür.

Kriptografi:Genel şifreleme olarak bilinir.

Stenanografi: taşıyıcı dosyada bulunun boşluklardan faydalanarak bu kısımlara dosyaları şifreleyerek
saklama yöntemidir.taşıyıcı resim ve müzik dosyası olabilir.Taşınan dosyanın ne olacağı önemsizdir.

Lag: daha çok IRC ortamlarında duyduğumuz yavaşlama,gecikme olaylarına verilen addır.

Adware: Reklam amaçlı olan kullanıcılara istekleri olmadan sitelerı açan homepage ı değiştiren ve
bunun gibi daha birçok sinir bozucu olaylara neden olan bir programdır.

Fake Mail: Kullanıcıları yanıltmaya yönelik düzenlenen tamamen sahte bir formdur.Güvenerek
kişisel bilgilerinizi ve şifreleriniz girdiğiniz bu tip maillar tamamen sahtedir ve her yazdığınız bilgi
aynen bunun size yollyan hackerın eline geçecektir

Incoming search terms:

hacker sözleri
11Nis/110

Temel FTP komutları

cd : Dizin değiştirme (cd ) (cd .. : bulunulan dizinden bir öndekine geçme)
pwd : Bulunulan dizinin ismini verir
dir : Bulunulan dizindeki dosyaları listeleme
ls : Bulunulan dizindeki dosyaları kisa olarak listeleme (Örnek kullanımlar : ls -lr : ayrıntılı, tersten alfabetik listeleme; ls -lr |more : sayfa sayfa listeleme (dizin içinde cok fazla sayıda dosya varsa bu kullanım oldukça yararlıdır))
get : Dosya alma (get (). ( seçimliktir, kullanılmayabilir. Bu durumda dosya_adı aynen kullanılacaktır.
put : Dosya gönderme (put ()
mget : Birden fazla dosya almak istendiğinde kullanılır. Örnek kullanımlar: mget *.zip, mget a*.* vb..
mput : Birden fazla dosya göndermek istendiğinde kullanılır.
ascii : Dosya aktarımlarında aktarım modu olarak ASCII kullanılacağını belirtme.
binary: Dosya aktarımlarında aktarım modu olarak BINARY kullanılacağını belirtme. Arşiv dosyaları (zip, arj, z, zoo, hqx vb), calıştırılabilir programlar (.exe, .com), resim formatlı programlar (gif, jpeg vb) FTP ile alınmadan/ya da gönderilmeden önce mutlaka bu komut verilmelidir.
delete: FTP yapılan yerde bir dosyayı silme (delete , eğer yetkiniz varsa kullanabileceğiniz bir komuttur)
mkdir : FTP yapilan yerde yeni bir dizin oluşturma (mkdir , eğer yetkiniz varsa kullanabileceğiniz bir komuttur)
rmdir : FTP yapılan yerde boş bir dizini silme (rmdir , eğer yetkiniz varsa kullanabileceğiniz bir komuttur) help : Kullanılabilecek komutlar ile ilgili bir yardım ekranı çıkarır.
lcd : FTP ortamından çıkmadan, kendi makinanızda dizin değiştirmenizi olanaklı kılar.
close : FTP ortamından çıkmadan, sadece ilgili bağlantıyı kapatmak için kullanılır.
quit : FTP ortamından çıkmak ve bağlantıyı kapatmak için kullanılır (bye komutu da aynı işi görür).
Bazı FTP merkezleri, tüm bir dizini sıkıştırarak gönderme kabiliyetine sahiptir. Söz gelimi, linux isimli bir alt dizini, GET linux linux.zip şeklinde sıkıştırılmış olarak alabiliriz. Ancak, bu özellik her FTP merkezinde olmayabilir.

Kütük transferi

Internet aracılığı ile kütük transferinin yapılması için get,mget, put ve mput komutları kullanılmaktadır. Ancak transfer edilecek kütük tipine bağlı olarak, transfer tipinin seçilmesi gerekmektedir. Internette iki tür transfer tipi vardır.

Ascii: Bilgisayarlar arasında text kütüklerinin transferi için uygundur.

Binary: Text içeren veya içermeyen imaj ya da program kütüklerinin transferi için kullanılır. Uzantısı z, Z, exe, zip, tar, com, sys, gz veya ps olan kütükler binary tipinde alınmalıdır. Burada z, Z, zip, tar, gz uzantıları o kütüğü n sıkıştırılmış olduğunu ps ise o dosyanın Postcript yapıda olduğunu gösterir. Uygun programlar ile bu kütüklerin transfer işleminden sonra açılmaları gerekmektedir.

Bu komutların kullanımı için iki örnek verilmiştir.
ftp> ascii
200 Type set to A. Ascii Kütük Transferi
ftp> get news.txt
200 PORT command successful.
150 Opening ASCII mode data connection for news.txt (42390 bytes).
226 Transfer complete.
42553 bytes received in 6.9 seconds (6 Kbytes/s).

ftp> binary
200 Type set to I. Binary Kütük Transferi
ftp> get news.zip
200 PORT command successful.
150 Opening BINARY mode data connection for news.txt (42390 bytes).
226 Transfer complete.
42390 bytes received in 7.2 seconds (5.8 Kbytes/s).
Kütük transferi yapılırken, "wildcard" denilen joker karakterlerin de kullanımı
mümkündür. Örneğin;
ftp>mget news*

yazılacak olursa içinde news kelimesinin bulunduğu tüm kütüklerin kopyalanmak istendiği anlaşılacak ve tek tek bu kütüklerin istenip istenmediği sorgulanarak kopyalama yapılacaktır. Eğer bu kütüklerin sorgulama yapılmadan taşınması isteniyorsa "prompt" ko mutu verilmelidir. Tekrar bu komut verilene kadar yapılacak tüm kopyalama işlemleri sorgusuz gerçekleştirilecektir. Veri transferi sırasında sıkıştırılmış kütüklerin kullanımı hem maddi hem de zaman açışından dikkate değer kazançların doğmasına yol açmaktadır. Ancak sıkıştırılmış kütüklerin hangi anlama geldiği daha doğrusu hangi programla eski haline getireleceğinin bilinmesi gereklidir.

İstenen FTP Tabanını Bulma (archie)

İstenen bir dosyayı (veya programı) ve ait olduğu FTP tabanını bulmanın en kolay ve çabuk yolu archie komutunu kullanmaktır. McGill üniversitesinde geliştirilmiş olup, kamuya açık ftp kullanımına izin veren arşivlerdeki kütük isimlerini bir veri tabanında tutan ve bunun sorgulamasını yapan bir sistemdir. Veri tabanı periyodik olarak güncellenmekte ve McGill de bulunan ana server yardımıyla diğer serverlerin uyumlu olması sağlanmaktadır. Archie komutu ile 1000’in üzerindeki anonymous FTP kaynağı taranarak, 100 gigabytes civarındaki bilgi kontrol edilmektedir. Bu komut ile kullanıcının verdiği isme uyan dosyaların bulunduğu kaynaklar seçilip, sıralı biçimde özetlenir. İstenirse yapılan arama işlemi bir text dosyasında saklanabilir. Bilgilerin bulunduğu list eler ayda bir yenilenerek güncelliği sağlanmaktadır. Kullanımı için, archie -paremetreler anahtar kelime yapısı kullanılmaktadır. Burada kullanılabilecek parametrelerden bazıları aşağıda kısaca listelenmişitir. Burada ki parametreler kullanılan bilgisayarın türüne ve archie programının özelliklerine bağlı olarak farklılıklar göstermektedir. Windows ortamında çalışan programlar kullanıldığı zaman bu parametreler ikonlar halinde yer almaktadır.

o: Sorgulama sonuçlarının saklanacağı dosya adı (tüm yazılımlarda desteklenmez)
l: Sorgulama sonuçlarının her bir satıra bir sonuç gelecek biçimde özetlenmesini sağlar.
s: Taramada büyük/küçük harf ayırımı yapmaz.
c: Taramada büyük/küçük harf ayırımı yapar.
e: Verilen anahtar kelime ile tamamen uyan isimleri tarar. Büyük/küçük harf ayırımı yapar.

Örnek: Aranmak istenilen dosyanın adı vine.tar.Z olsun,
$ archie vine.tar.Z
Host athene.uni-paderborn.de
Location: /local/X11/more_contrib
FILE -rw-r--r-- 18854 Nov 15 1990 vine.tar.Z
Host emx.utexas.edu
Location: /lpub/mnt/source/games
FILE -rw-r--r-- 12019 May 7 1988 vine.tar.Z
Host export.lcs.mit.edu
Location: /contrib
FILE -rw-r--r-- 15548 Oct 90 00:29 vine.tar.Z
biçiminde arama sonuçları listelenir.

7Nis/110

Sql Gruplandırarak İşlem Yapma

Sql Gruplandırarak İşlem Yapma

GROUP BY (GRUPLA)

ÖRNEK: Her bölümdeki ortalama maaş nedir?

SELECT böl_no,AVG (brüt)
FROM personel
GOUP BY böl_no;

HAVING:

HAVING (SAHİP)

Gruplandırarak kümeleme fonksiyonunu uygularken koşulda verilebilir.Bu durumda grup üzerindeki hesaplamalarla ilgili koşul belirtilirken HAVING (SAHİP) sözcüğü kullanılır.

ÖRNEK: En yüksek maaşin 9000000’dan fazla oldugu bölümlerdeki personele ait ortalama maaşlari listele.

SELECT böl_no,AVG (brüt)
FROM personel
GROUP BY böl_no
HAVING AVG(brüt)> 9000000;

HAVING sözcüğü SELECT komutunda GROUP BY bulunmadığı zaman geçersizdir. HAVING sözcüğünü izleyen ifade içinde SUM , COUNT(*), AVG, MAX yada MIN fonksiyonlarından en az biri bulunmalıdır.

HAVING sözcüğü sadece gruplanmış veriler üzerindeki işlemlerde geçerlidir.
WHERE sözcüğü bir tablonun tek tek satırları üzerinde işlem yapan koşullar içinde geçerlidir.

Bazı durumlarda HAVING ve WHERE sözcükleri ile birlikte SELECT komutu içinde kullanılabilir.

ÖRNEK: Personel tablosu içinde her bölümde erkek personele ait maaşlar için ortalamanin 9000000’dan fazla oldugu bölümleri listele

SELECT böl_no, AVG (brüt)
FROM personel
WHERE cins= .T.
GROUP BY böl_no
HAVING AVG (brüt) > 9000000;

BİRDEN FAZLA TABLOYU İLİŞKİLENDİRMEK

JOIN (İLİŞKİLENDİR)

ÖRNEK: Personel ve bölüm adlı 2 tablo bulunmaktadır.
Çalışan her personel ve personelin yöneticisi ile ilişkili bilgiler nelerdir?

SELECT *
FROM personel,bölüm
WHERE personel .böl_no=bölüm.bölüm_no ;
ÖRNEK: JOIN (İLİŞKİLENDİR) işleminde arzu edilen(sicil, ad, soyad, böl_no, yön_s_g_n) alanların listele.

SELECT sicil,ad,soyad,böl_no,yön_s_g_n
FROM personel,bölüm
WHERE personel .böl_no = bölüm .bölüm_no;

SELF-JOIN: KENDİSİYLE -İLİŞKİLENDİR:

TANIM: Bir tablonun kendisi ile birleştirilmesine “KENDISIYLE-ILIŞKiLENDIR” denir.(SELF-JOIN)

SELECT A. sicil , A.ad , A.soyad,
B .ad , B.soyad , B.dog_tar
FROM personel A , personel B
WHERE A. yon_sos_g_n =B .sosy_g_no;

NESTED SELECTS:

İÇİÇE SEÇİMLER

TANIM: İç içe geçmiş SELECT komutlarından oluşur. İçteki Select komutunun bulduğu sonucu dış takı komutumuz işlevini yerine getirmesi için kullanılır.

ÖRNEK: Parça numarası 24 olan parçayı ,projelerde kullanan çalışan personeli listele.

SELECT *
FROM personel
WHERE sosy_g_no
IN(SELECT per_s_g_no
FROM parça,proje,çalışma
WHERE pr_no = proj_no AND
proj_no =proj_no AND
par_no =24);

ÖRNEK: Fatih’te oturan personelin çalıştığı projelerin adlarını ve yerlerini listele.

SELECT proj_ad,yer
FROM proje
WHERE proj_no IN
(SELECT proje_no
FROM personel,çalışma
WHERE sosy_g_no = per_s_g_no
AND adres LIKE “% fatih %”);

UNION SÖZCÜĞÜ:

UNION (BİRLEŞİM)

TANIM: İki ayrı SEÇ komutunun sonucunda elde edilen tabloların birleşimi işlemini gerçekleştirir.

ÖRNEK: Adı Ahmet ve Soyadı Caner olan kişi yada kişileri işletmenin yürüttüğü projelerde çalışan bir kişi (sıradan bir personel yada bölüm yöneticisi)olarak bulunduran projelerin isimlerini ve projelerin yürütüldüğü yerleri listele.

(SELECT proj_ad,yer
FROM proj,bölüm,personel
WHERE bl_no=bölüm_no AND
y_sos gno = sosy_g_no
AND ad =”Ahmet”AND soyad =”Caner”)
UNION (SELECT proj_ad,yer
FROM proje,çalışma,personel
WHERE proj_no = proje_no AND
Per_s_g_no = sosy_g_no AND ad =”Ahmet”
AND soyad =”Caner”)

KOŞULLAR:

UNION (BİRLEŞİM) sözcüğü ile ,iki yada daha çok kişi SELECT ’in sonucu olan tabloların küme birleşimi işlemine tabi tutulması için 2 koşul gereklidir.

1) SELECT komutları sonucunda elde edilecek tablolar aynı sayıda kolon içermelidirler.
2)Sonuç tabloları karşılıklı olarak kolonların aynı veri tipi ve aynı genişlikte olmalıdır.

ANY :

ANY (HER HANGİ BİRİ)

ÖRNEK: Satış bölümünde çalışan personelin her hangi birinden daha düşük maaş alan ve mühendislik bölümündeki kişileri listele.

SELECT *
FROM personel
WHERE brüt < ANY (SELECT brüt FROM personel WHERE böl_no = 2) AND böl_no =1; Aynı ifade aşağıdaki gibi yazılabilir: SELECT * FROM personel WHERE brüt < (SELECT MAX (brüt ) FROM personel WHERE böl_no = 2) AND böl_no =1; ALL (HEPSİ) ÖRNEK: Satış bölümünde çalışan ve mühendislik bölümündeki personelin hepsinden daha fazla maaş alan personeli listele.Bu örnekte satış bölümü kodu = 2 ve mühendislik bölümü kodu = 1 alınmıştır. YAPILIŞ YOLU: 1) SELECT * FROM personel WHERE brüt >
ALL (SELECT brüt
FROM personel
WHERE böl_no = 1)
AND böl_no = 2;

2) SELECT *
FROM personel
WHERE brüt >
(SELECT MAX (brüt)
FROM personel
WHERE böl_no = 1)
AND böl_no =2;

EXISTS (MEVCUT)

VE ,VEYA ,DEĞİL operatörleri ile kullanılabilir.

ÖRNEK: 27 no’lu parçayı satan satıcılarla ilişkili tüm bilgileri listele.

SELECT *
FROM satıcı
WHERE EXISTS
(SELECT *
FROM par_sat
WHERE sat_no = satıcı_n
AND parça_n =27);

NOT EXISTS (MEVCUT DEĞİL)

VE ,VEYA ,DEĞİL operatörleri ile kullanılabilir.

ÖRNEK: 27 no’lu parçayı satmayan satıcılar kimlerdir?

SELECT *
FROM satıcı
WHERE NOT EXISTS
(SELECT *
FROM par_sat
WHERE sat_no = satıcı_n
AND parça_n =27);

EXCEPT (FARKLI)

Tablo-1 - Tablo-2 işlemi sonuç(iki kümenin farki) elde edilecek tabloda,Tablo-1’de bulunup, Tablo-2’de bulunmayan veriler mevcut olacaktir.

ÖRNEK: Satış bölümündeki personel adlarından,mühendislik bölümünde bulunmayanları listele.

SELECT * FROM
(SELECT ad FROM personel
WHERE bol_no=1
EXCEPT
SELECT ad FROM personel
WHERE bol_no =2);

INTERSECT (KESİŞİM)

ÖRNEK: Hem Ankara’da,hem de İstanbul’daki projelerde görev alan bölümleri listele.

SELECT * FROM
(SELECT bl_no FROM proje
WHERE yer LIKE “%Ankara%”
INTERSECT
SELECT bl_no FROM proje
WHERE yer LIKE “%İstanbul%”);

SAVE TO TEMP (SAKLA)

ÖRNEK: Bayan personeli, bayan adlı bir tablo içinde sakla.

SELECT *
FROM personel
WHERE cins =.F. SAVE TO TEMP bayan;

KEEP:

KEEP (KALICI)

ÖRNEK:

SELECT *
FROM personel
WHERE cins = .F.
SAVE TO TEMP bayan KEEP;

7Nis/110

Form Elemanları

FORM Elemanları
FORM KOLEKSİYONU

Textbox
Checkbox
Option Buttons
Listbox ve türevleri
Hidden Fields
Text Areas

ACTION=url
METHOD=get-post
TARGET=Hedef Pençere
Name= Değisken

"Method", kullanıcının girdiği bilgileri ne şekilde alacağımızı belirler. iki seçeneği vardır, “Get” ve “Post”.
Post ve Get form sayfasına girilen verileri başka bir sayfaya gönderme metodlarıdır.

Post ile hem daha fazla veri gönderilebilindiği gibi gönderilen veriler adres satırında gözükmez. Eğer formda güvenlik gerektiren şeyler varsa Post kullanılır.

Get ile sınırlı veri gönderilir ve gönderilen veriler adres satırında kullanıcı tarafından görülür.

Post, Get'e göre daha fazla bellek harcar bu yüzden post metodu get metodundan daha yavaştır.

POST
1-)Yavas
2-) Güvenli
3-) http header’ı kullanır.
4-) Sınırsız bilgi gönderir

GET
1-) Hızlı
2-) Güvensiz
3-) Browser’in adres satırını kullanır.
4-) Max 2048 karekter gönderebilir

Etiketler: , , Yorum yok
7Nis/110

Mail Hazırlama-CDO ile mail yollama

Form Mail
Örnek:



MAIL GONDER

Isim :
Mail :
Konu :
Mesaj :



CDO İLE MAIL YOLLAMA
En yaygın mail gonderme bileşenidir

mail.asp (CDO ile)

<% ' formdan içerik al isim = Request.form("isim") mail = Request.form("mail") konu = Request.form("konu") mesaj = Request.form("mesaj") ' mektup kime gidecek abisi kime = "admin@site-adi.com" ' bir CDO Newmail nesne ornegi yarat Set mektup = Server.CreateObject("CDONTS.NewMail") ' çok açik, geleneksel atamalar mektup.From = isim & " <" & mail & ">"
mektup.To = kime
mektup.Subject = konu
mektup.Body = mesaj
' hata olursa mizikçilik yapmadan devam et
on error resume next
' ve sadede geldik.
mektup.Send
' hata olusursa

If err <> 0 Then
hata = err.description
Response.Write "hata oldu: " & hata
Else ' is temizse
tebrik = "Mailiniz yolladı"
Response.Write tebrik
End If
' açtigin nesneyi kapa...
Set mektup = Nothing
' bitti
%>

Incoming search terms:

Eğlence ürünleri mail
7Nis/110

Server Nesnesi Uygulama

Server Nesnesi Uygulama
Server ( Sunucu )

ASP, Web Server programını bir nesne olarak ele alır ve onun bize sağladığı araçları ve imkanları kullanmamızı sağlar. Web Server, ASP için bir nesnedir, ASP’nin bir çok işini bu nesnenin özellikleri ve metodları halleder. Server nesnesinin bir özelliği (ScriptTimeout) ve dört metodu (CreateObject, HTMLEncode, URLEncode, MapPath) vardır. Web Server çalıştığı bilgisayarın sizin siteniz adına yönetiminden sorumludur; dolayısıyla bu kadar az özellik ve metodu var diye bu nesneden çok yararlanmayacağımızı sanmayın. ActiveX ve COM bileşenlerini çalıştırmak Server’ın görevidir.
Server Script Time Out
Bir sayfa içindeki script lerin belli bir süre içerisinde çalışması bekletilir.Bu süreyi kendiniz degiştirmediginiz ürece 90Sn dir.Yani 90 Sn içerisinde tamamlanmazsa çalışması durdurulur.

Bunu degiştirmek için ise:

<% Server.ScriptTimeout = 145 %>

Bölelikle çalışma süresini 145 Sn çıkartmış oluruz bunu degiştire bilirsiniz.

Böyle bir şeyi neden yapmak isteyebiliriz? Script'iniz çok karmaşık veya başka bir Server'daki veritabanından veri çekiyor, olabilir. Gerçi bu anlamda 90 saniye bilgisayar milleti için bir asır anlamına gelir, ama yine de durdurulmasaydı işini başarıyla tamamlayacak bir Script, bu sürenin kısalığı yüzünden Server tarafından durdurulabilir. ASP sayfalarınız çok karmaşıksa ve sürekli Timeout hatası veriyorsa, hata aramadan önce bu süreyi uzatabilirsiniz.
Server.MapPath :
MapPath (Yolu belirle)

Web Server açısından “kök dizin” (root directory) Server’ın bulunduğu bilgisayarın sabit diskinde, herhangi bir klasör olabilir.

Örneğin IIS için bu varsayılan değer olarak “C: netbupwwwroot” klasörüdür. Özellikle ASP ile “program niteliğinde siteler” yapmaya başladığımızda, sitenin ilgili bütün dosyalarının bulunduğu bir dizin için yol belirlemek isteyebiliriz. Bunu Server nesnesinin MapPath (Yolu belirle) metodu ile yapabiliriz:

WebDizini = Server.MapPath(“/benim_site”)

Bu komutla WebDizini değişkenin değeri muhtemelen şöyle olacaktır:

“C: netbupwwwrootbenim_site”
Server.CreateObject :
createObject(ObjectID)

Diyelim ki sayfanızda reklam amaçlı banner grafiklerini belirli zaman aralığı ile veya ziyaretçiye gönderdiğiniz Cookie (çerez) bilgilerine göre değiştirmek istiyorsunuz. Bunun için diyelim ki MS-Web Server Programının AdRotator bileşininden yararlanacaksınız; şöyle bir kod işinizi görebilir:

<% Set Reklam = Server.CreateObject (“MSWS.AdRotator”)%>
<%= Reklam.GetAdvertisement(“/reklamlar/buyukbanka.txt”)%>

Burada GetAdvertisement, Server’ın AdRotator bileşininin bir metodudur. Server’ın CreateObject metodundan, veritabanına ulaşırken de yararlanacağız.

<% Set BenimDB = Server.CreateObject("ADODB.Connection") %>

ÖRNEK

<% '-- Bu kod ile veritabanı nesnesi tanımlandı. İstenirse burada serverde kayıtlı olan DLL dosyalar da tanımlanabilir. Set Nesne=Server.CreateObject("ADODB.Connection") %>
HTMLEncode, URLEncode:
İçinde HTML açısından kod parçası veya özel işaret sayılan karakterler bulunan metinleri sayfamıza içerik olarak göndereceğimiz zaman Server'ın işaretleri aynen metin gibi göndermesini sağlamak için, örneğin:

Server.HTMLEncode("Değisken1 < Değisken2") yazarsak, ASP bu metni HTML kodu olarak yorumlamaz, metin olarak algılar. Internet'te bazen özellikle sayfa adresleri belirtilirken bazı değerlerin "URL Kodu" dediğimiz şekilde kodlanmış olarak gönderilmesi gerekir. Bu kodlama türünde boşlukların yerine + işareti konmuş olması şarttır. Bu tür bilgiler göndereceğimiz zaman: Server.URLEncode("kelime 1 kelime2 kelime3") şeklindeki bir kod Bunu hemen şu şekle sokacaktır: kelime1+kelime2+kelime3

6Nis/110

AdRotator Nedir

AdRotator Nedir
AdRotator

Adrotator sayfalarımizda görüntülenmek için alınan bannerlerin hangi sırayla, ne kadar sıklıkla gosterılecegini bildiren, bu bannera tıklandıgında, reklamı veren url' ye yönlendırmeyi yapan komponenttir.

Bir uygulama ile nasıl yapıldığını açıklayalım.

Öncelikle aşagıda yazılanları ReklamPlan.txt adında root klasörüne kaydedin.

Redirect Reklam.asp
width 462
height 53
border 0
*
Banner1.gif
http://www.nebakiyon.Com
Mynet alt bilgileri
5

Banner2.gif
http://www.sanane.com.Com
Google alt bilgileri
6

Banner3.jpg
http://www.murattatar.net
Yahoo alt bilgileri
1
Şimdi bu textimizde kullandığımız terimleri tanımlayalım.

WIDTH: Bannerlarınızın Genişliğini gireceksiniz.
HEIGHT: Bannerlarınızın Yüksekliğini gireceksiniz.
BORDER: banneri cerceve içine almak istemiyorsak 0 degerini veririz.

İlk Satırda bannerin img adını ve yolunu yazıyorsunuz.
İkinci Satırda,url adresini
Üçüncü satırda ise imajın üzerine gelince çıkacak ALT yazısını.
Dördüncü satırdaki rakamlarımızın toplamı 10'u verir. Bu rakamlar seçili banner'ımızın 10 sayfa gösteriminde kaç kere gösterileceğini belirler...

Redirect Reklam.asp ibaresi, reklama tıklandığında yönlenilecek URL'yi belirtir. ADROTATOR bileşeni, resimlere atadığımız adresi ve resim dosyasının adresini bir string oluşturarak REDIRECT satırındaki adrese gönderir. Bizim bu satırdaki adresimiz reklam.asp

Bu durumda; Örneğin, http://www.yahoo.Com reklamına tıklandığında şu şekilde bir adres oluşacaktır:
http://www.site-adi.com/reklam.asp?url=http://www.yahoo.comI=images/banner3.gif

Bizede reklam.asp dosyasını oluşturup, sayfayı url değişkenindeki adrese yönlendirmek kalıyor. Bu işlemi Response.Redirect(url ) komutunu kullanarak yapacağız.

Şimdi reklam.asp'yi oluşturalım;

<% url=Request.QueryString("url" ) If url<>"" then Response.Redirect(url )
%>

Şimdi de Reklamları gösterim yapacagımız sayfanın kodlarını yazmaya.

<% Set ReklamNesnesi=Server.CreateObject("MSWC.Adrotator" ) ReklamNesnesi.TargetFrame="target='_blank'" ' yeni pencere de actık banner=Reklamnesnesi.GetAdvertisement("banner.txt" ) Response.Write banner %>

6Nis/110

Rastgele Sayı Random

Rastgele Sayı Random
Randomize
Tesadüfî Sayı üretmek
Rastlantısal sayı, bir dizide tekrar etmesi belirli bir düzene tabi olmayan sayı demektir.

VBScript, bu amaçla Randomize ve Rnd bulunur. Randomize, tesadüfî sayı üretme sürecini başlatır; Rnd da bu sayıyı size verir. Kodunuzda bir yerde Rnd kullanacaksınız, ondan önce bir yerlerde mutlaka Randomize komutunun yer alması gerekir. Bunun bir uygulaması şu olabilir:

<% OPTION EXPLICIT %>

<% Dim TesadufiSayi Randomize TesadufiSayi = Rnd %>
<%=TesadufiSayi%>

Bu dosyayı tesadufi.asp adıyla kaydedip çalıştırın; Browser'ın Yenile düğmesini her tıkladığınızda ekranda yeni bir sayı göreceksiniz

6Nis/110

Cookies Çerezler Kurabiyeler

Cookies Çerezler Kurabiyeler
Cookier ve kullanım alanları

Cookie nedir?
Çerezler, Kurabiyeler (cookies)

Cookies ASP de bize çok yardım eden unsurlardır.Ziyaretcinin bilgisayarına not bırakıp daha sonra okumada kullanılır.

Cookie(çerez) ler sayesinde istemcinin bilgisayarında bazı bilgiler saklanabilir

Bu bilgiler kişisel bilgilerin veya sitede o kullanıcıyla ilgili bilgilerin saklanması için kullanılabilirler. Cookie "response" nesnesinin bir koleksiyonudur.

Cookielerde bilgiler isim-değer çiftleri şeklinde tutulurlar kullanıcının bilgisayarına yollanırken de bu şekilde yollanırlar.

Örnek:
response.cookie("isim")="xxx"
Bir cookiede birden fazla alt anahtar bulunabilir.
Örnek:
response.cookie("aaa")("bbb")("ccc")="xxx" ?eklinde...
Cookielerin "expires" adynda bir özeliği vardır Bu şekilde cookienin kulanıcı bilgisayarında hangi tarihe kadar saklanacağı belirtilebilir.

Örnek:
response.cookie("xx").expires="feb 11,2000"
Bu ifade ile bu cookienin 11 şubat 2000'e kadar bilgisayarda saklanacağını belirtilir.

6Nis/110

Response Nesnesi

Response
Response.write

<% %> tagları arasında yazılacak Response.write ifadesiyle sayfaya asp kodları içerisinde yazdıgınız bir yazıyı yada bir değişkeni yazdırabiliriz.

Örnek :

<% degisken="ASP Dersi"%>

<% Response.Write "Merhaba" Response.Write "
"
Response.Write "Active Server Page
"
Response.Write "


"
response.write (degisken)
%>

Response.write ASP'de çok kullanılan bir komuttur <% Response.write , yerine <%= yazarakta kullanabilirsiniz. Örnek : <% degisken="ASP Dersi"%>

<%= "Merhaba"%>
<%="
"%>
<%="Active Server Page
"%>
<%="


"%>
<%= (degisken) %>
Response.Buffer
Buffer (Tampon): Default değeri "true"

<% Response.Buffer = True %>

Asp kodlarının tamamının çalışması beklenir, tüm kodlar işlendikten sonra HTML sayfa toptan gösterilir.

bu degeri false yapmak için;

<% Response.Buffer = False %>
Response.End
End (Son): Sunucu bu satırı gördügünde işlem yapmayı bırakır. Bu satırdan sonraki asp veya html kodlar icra edilmez. Ve o zamana kadar tampon hafıza ki değerleri tarayıcıya gönderir.

Örnek:

<% Response.Write "Nasilsin ASP" Response.End Response.Write "How are you ASP" %>

Çıktı : Merhaba ASP , olur.
Response.Expires
Expires (zaman aşamı süresi): Sayfanın Tarayıcı tarafından cache dizininde ne kadar tutulacağını dakida olarak set etmek için kullanılır.

<% Response.Expires=dakika %>

<% Response.Expires = 60 %>

Bu değere "0" yapılırsa ( Response.Expires=0 ) sayfaya her gelişte sayfa yeniden yüklenir.
ExpiresAbsolute:
Bu sürenin dakika olarak değil tarih veya saat olacak şekilde sayfanın geçerlilik süresini belirlemek için kullanılır.

<% Response.ExpiresAbsolute=#tarih# %>

şeklinde.
Response.Clear
Clear (Boşalt): Sunucu çalışma sırasında bu deyime rastlarsa o zamana kadar tampon bellekteki saklanan bütün bilgileri siler, yok eder.

Not: Response.Buffer= false olarak ayarlı ise Run-time (çalışma zamanı) hataya sebep olur.

Kullanımı :

<% Response.Clear %>
Response.Flush
Flush (hemen gönder), Sunucu çalışma sırasında bu ifadeye rastlarsa , bu ifadeye kadar icra edilmiş kodun sonucunu (Tompon Bellekte Tuttugu Değerleri) HTML’i tarayıcıya gönderir:

<% response.flush %>
Response.Redirect
Bir sayfadayken başka bir sayfaya yönlendirme yapmak için kullanılır.Sunucu çalışma sırasında bu ifadeye rastlarsa çalışmasını durdurur ve belirtilen sayfayı açar.

Kullanımı:

response.Redirect "yönlendirecek Sayfa Sdresi "

Not: Eğer http header client a gönderilmiş ise Response.redirection hataya sebep olmakta .Bu hatayı engellemek için response.Buffer özelliğini true yapmak ve herhangi bir noktada response.clear kullanarak response.Redirection in hata vermesini önlenir.

Örnek:

<% Response.Buffer = true %>



<% Response.Clear Response.Redirect "yonlendirme.asp" %>

Copy Protected by Chetan's WP-Copyprotect.