New Page 1
asp/kitap 1
TOC o "2-6" h z
"Heading 1;1;Chapter Title;1;Title;1"
Önsöz.
PAGEREF _Toc481830201 h 4
ASP’ye Giriş.
PAGEREF _Toc481830202 h 10
Kişisel Web Server Kuralım...
PAGEREF _Toc481830203 h 11
PWS Kurulurken Hata Verirse.
PAGEREF _Toc481830204 h 12
Bir Örnek Yapalım...
PAGEREF _Toc481830205 h 14
Internet’te ASP..
PAGEREF _Toc481830206 h 15
ODBC İşliyor Mu?.
PAGEREF _Toc481830207 h 20
ASP’nin Unsurları
PAGEREF _Toc481830208 h 21
ASP’nin Dili
PAGEREF _Toc481830209 h 22
VBScript’e Giriş.
PAGEREF _Toc481830210 h 23
Bir iki yazım kuralı
PAGEREF _Toc481830211 h 25
Değişkenler.
PAGEREF _Toc481830212 h 26
Kötü programcılığı önlemek için!
PAGEREF _Toc481830213 h 27
Array Fonksiyonu.
PAGEREF _Toc481830214 h 28
Sabit Değerler.
PAGEREF _Toc481830215 h 32
VBScript’te İşlemciler (Operatörler)
PAGEREF _Toc481830216 h 32
VBScript’de Program Kontrolü.
PAGEREF _Toc481830217 h 34
Mantıksal Sınamalar.
PAGEREF _Toc481830218 h 35
If.. Else.
PAGEREF _Toc481830219 h 35
Dönen Değer
PAGEREF _Toc481830220 h 36
Select Case.
PAGEREF _Toc481830221 h 37
Döngüler.
PAGEREF _Toc481830222 h 39
For..Next döngüsü.
PAGEREF _Toc481830223 h 39
While...Wend.
PAGEREF _Toc481830224 h 41
Do..Loop.
PAGEREF _Toc481830225 h 42
Tesadüfî Sayı
PAGEREF _Toc481830226 h 44
Tam Sayı Elde Etmek için: Int ve Round.
PAGEREF _Toc481830227 h 46
Dizi değişkenler için döngü: For Each..Next
PAGEREF _Toc481830228 h 47
Döngüyü durdurmak isterseniz.
PAGEREF _Toc481830229 h 48
Süreçler (Prosedürler)
PAGEREF _Toc481830230 h 48
Sık Kullanacağımız Hazır Fonksiyonlar.
PAGEREF _Toc481830231 h 51
Tarih ve saat
PAGEREF _Toc481830232 h 51
Karakter-dizisi Düzenleme.
PAGEREF _Toc481830233 h 52
Dizi-Değişken (Array) Fonksiyonu.
PAGEREF _Toc481830234 h 54
Test Fonksiyonları
PAGEREF _Toc481830235 h 56
ASP’nin Nesneleri
PAGEREF _Toc481830236 h 58
Hata (Err) Nesnesi
PAGEREF _Toc481830237 h 61
Dosya Sistemi Nesnesi
PAGEREF _Toc481830238 h 62
Metin (TextStream) Nesnesi
PAGEREF _Toc481830239 h 67
Metin Dosyası Oluşturma (CreateTextFile)
PAGEREF _Toc481830240 h 68
Varolan Metin Dosyasına Ek Yapma (OpenTextFile)
PAGEREF _Toc481830241 h 68
Sunucu (Server) Nesneleri
PAGEREF _Toc481830242 h 71
Server Nesnesi
PAGEREF _Toc481830243 h 71
Talep (Request) Nesnesi
PAGEREF _Toc481830244 h 74
QueryString ve Form...
PAGEREF _Toc481830245 h 75
ServerVariables (Server Değişkenleri)
PAGEREF _Toc481830246 h 75
Cookie (Çerez)
PAGEREF _Toc481830247 h 79
Sertifika Nesnesi
PAGEREF _Toc481830248 h 80
Karşılık (Response) Nesnesi
PAGEREF _Toc481830249 h 81
Cookie’ler
PAGEREF _Toc481830250 h 81
Metodlar
PAGEREF _Toc481830251 h 82
Özellikler
PAGEREF _Toc481830252 h 83
Uygulama (Application) ve Oturum (Session) Nesnesi
PAGEREF _Toc481830253 h 86
ActiveX Veri Erişim (ADO) Nesneleri
PAGEREF _Toc481830254 h 88
ODBC ve OLE-DB..
PAGEREF _Toc481830255 h 89
Connection (Veritabanına bağlantı)
PAGEREF _Toc481830256 h 92
Recordset (Kayıt dizisi)
PAGEREF _Toc481830257 h 92
Hızlı SQL Kursu: Select
PAGEREF _Toc481830258 h 93
Recordset.Open.
PAGEREF _Toc481830259 h 95
ADO Sabit Değerleri
PAGEREF _Toc481830260 h 96
Recordset.Update.
PAGEREF _Toc481830261 h 97
Recordset.Delete.
PAGEREF _Toc481830262 h 99
Recordset.AddNew..
PAGEREF _Toc481830263 h 99
DSN’siz Veri Bağlantısı
PAGEREF _Toc481830264 h 99
Veri ile HTML Etiketlerini Doldurma.
PAGEREF _Toc481830265 h 101
Seçme Kutuları: SELECT.
PAGEREF _Toc481830266 h 101
İşaretleme Alanları: INPUT-RADIO..
PAGEREF _Toc481830267 h 104
İşaretleme Alanları: INPUT-CHECHBOX.
PAGEREF _Toc481830268 h 106
ASP Kaynakları
PAGEREF _Toc481830269 h 108
asp/kitap 2...
PAGEREF _Toc481830270 h 110
Önsöz.
PAGEREF _Toc481830271 h 111
Alıştırma Uygulamaları
PAGEREF _Toc481830272 h 113
Doğum Günü Hesabı
PAGEREF _Toc481830273 h 113
Çift Tırnak Gerekince!
PAGEREF _Toc481830274 h 116
HTML Dışında İçerik.
PAGEREF _Toc481830275 h 116
Başka Sayfaya Yönlendirme.
PAGEREF _Toc481830276 h 118
Ziyaretçiden Bilgi Alma.
PAGEREF _Toc481830277 h 119
Form etiketlerinden bilgi alma.
PAGEREF _Toc481830278 h 125
Parola İle Sayfa Koruma.
PAGEREF _Toc481830279 h 126
Dinamik İçindekiler Sayfası
PAGEREF _Toc481830280 h 128
Gecikme Bildirme Sayfası
PAGEREF _Toc481830281 h 131
Form Değerlerini Yakalayalım...
PAGEREF _Toc481830282 h 134
Konuk Defteri Uygulaması
PAGEREF _Toc481830283 h 140
Veri Yönlendirmeli Web Uygulaması
PAGEREF _Toc481830284 h 145
Veri için hazırlık.
PAGEREF _Toc481830285 h 145
İnşaata Başlarken.
PAGEREF _Toc481830286 h 148
ODBC’e Veritabanımızı Bildirelim...
PAGEREF _Toc481830287 h 149
Sıra Web Programı’nda.
PAGEREF _Toc481830288 h 149
ASP’de Güvenlik.
PAGEREF _Toc481830289 h 166
Elektronik Adres Doğrulama.
PAGEREF _Toc481830290 h 167
Zararlı Kod Temizleme.
PAGEREF _Toc481830291 h 170
ADO Güvenliği ve Hata Mesajları
PAGEREF _Toc481830292 h 173
ASP Hatası Arama.
PAGEREF _Toc481830293 h 177
İleri ASP Konuları
PAGEREF _Toc481830294 h 178
Önsöz
“Merhaba: Ben bilgisayar hastası—Kroninukus
computerium—üniversiteyi yeni bitirmiş bir gencim. Byte dergisiyle verilen
"Internet Tasarım Rehberi" kitapçığını okuyarak
html'i öğrenmeye çalışıyorum ve bu
konuda çok istekliyim. Bundan iki ay kadar önce bir shareware program kullanarak
bir site hazırladım. Fakat bu programı kullanmak için hiç bir
html etiketini öğrenmek
gerekmiyordu. Oysa ben kendi çabalarımla bu işi halletmeyi ve hatta daha da
ileri götürmeyi düşünüyorum. Sizden ricam bana nereye gitmem gerektiğini
bildirmeniz, ve bunun için gerekli bilgi ve belgeleri sağlamanız, bizlere yardım
etmenizdir. Gayretleriniz için çok teşekkür ediyor, çalışmalarınızda başarılar
diliyorum.”
Merhaba: çok değil, bir buçuk yıl önce yazdığınız bu
mektuba, o günden beri sürekli karşılık verdim. Önce Byte, ardından PC
World ve şimdi de PC Life dergisinin eki kitapçıklarla, bu arzunuzu
yerine getirdik. Size bir harita sunduk; bu haritaya göre ilerlediniz. HTML’den
sonra site yeri edinme yollarıyla işe başladık. Ardından HTML’in durağan
kalıbını yırtmak için JavaScript öğrendik. Sonra, sitemizi ziyaret edenlerle
etkileşmeli sayfalar yapmak, onlardan Form yoluyla bilgiler almak, konuk
defterleri yapmak için CGI imkanlarını kullanmak amacıyla Perl’e sıra geldi.
Şimdi yolun sonundayız. ASP tekniği ile sitelerimizi veritabanına dayalı hale
getireceğiz; Server nesnelerini kullanarak gerçek dinamizme kavuşturacağız. Bunu
yaparken Visual Basic Scripting Edition (veya kısa adıyla VBScript) ile
tanışacağız.
Gerçi bu ve gelecek ay sunacağımız ASP Uygulamaları
kitapçığıyla, birlikte yürümek üzere çizdiğimiz eğitim döneminin sonuna gelmiş
oluyoruz; ama sizin önünüzde uzun bir yol var. Bu yol, Internet denen yeni
iletişim aracını kullanarak, toplumumuza yeni bir soluk kazandırma yoludur. Bu
yolda yalnız ilerleyeceksiniz. Bilgisayarınızın ekranının aydınlattığı yolda,
klavye ile baş başasınız. Kalbiniz ve onu dolduran Bilişim Teknolojisi aşkı size
rehber olacak. Daha öğreneceğiniz çok şey var hayatta. Hergün yeni
teknolojilerin çıktığı bir alan seçtiğinizin farkındasınız. Sakın kafanız
karışmasın: Siz ustasınız; teknoloji, adı üstünde, araçtan ibaret. Hergün yenisi
ile karşılaştığınız teknolojiler sizi korkutmamalı. Sırasıyla hepsini
başaracaksınız. Öğrendikçe, çok değil bir ay önce sizi korkutan bir dilin, bir
tekniğin ne kadar basit olduğunu göreceksiniz. Asla “Ben bunların hepsinin
altından nasıl kalkarım?” demeyeceksiniz. Sırasıyla herşeyi öğrenebilirsiniz.
Daima şunu tekrar edin: “Öğrenen nasıl öğrendi ise, ben de öğrenirim!” Bu yolda
aklınız ve kalbiniz size rehber olacaktır. Yeter ki onlara kulak verin.
ASP veya Active Server Pages (Etkin Sunucu
Sayfaları) tekniği, sayfalarınızı canlandıracak bir tekniktir. Bu teknik, bir
kaç sayfa sonra göreceksiniz ki, sil baştan bir bilgisayar programlama dili
öğrenmeye gerek olmadan uygulanabilir. Bu kitapçığı yazarken sizinle yolun
başından beri beraber olduğumuzu, yani HTML bildiğinizi varsayıyorum. Ayrıca
Web’in nasıl çalıştığını, Server (Sunucu) ve Client (İstemci)
ilişkisinin nasıl yürüdüğünü de biliyor olmalısınız.
ASP teknolojisinden yararlanmak istediğinizde Web sitesine
evsahipliği yapan bilgisayarda çalışmakta olan Web Server’ın ASP teknolojisini
tanıması ve sitenize bu hizmeti vermesi gerekir. ASP, bir zamanlar sadece
Microsoft’un NT ve daha sonra Windows 2000 işletim sistemine dayanan MS-IIS
(Internet Information Server) programında işleyebilirdi. Fakat şimdi artık
NT-tabanlı diğer Web Server programları gibi Unix-tabanlı Web Server programları
da ASP anlar ve işletir hale gelmiş bulunuyor. Fakat ASP sayfalarınızı gerçek
Internet ortamında ziyaretçilerinizin hizmetine sunmadan önce, kendi
bilgisayarınızda sınamanız gerekir. Bunun için bilgisayarınızın işletim sistemi
Windows 95/98 ise Kişisel Web Server (PWS), NT 4.0 ise IIS kurulmuş olmalıdır.
Sisteminiz Windows 2000 ise, IIS 5.0 kendiliğinden kurulmuş demektir.
Şimdi biraz ASP’den söz edelim. Bu kısaltmayı, “a..se..pe”
veya “ey-es-pi” diye harf-harf okuyanlar olduğu gibi, “eyspi” diye bir kelime
halinde okuyanlar da vardır; ve bana sorarsanız, hepsi de doğrudur. Internet
programcıları, bütün görevi bir sabit diskteki HTML dosyalarını alıp,
ziyaretçinin Browser’ına göndermekten ibaret olan Web Server programını yeniden
tasarlamaya başladıklarında, Server’ın sadece durağan sayfaları göndermesi
yerine, ziyaretçiden de veri kabul etmesinin uygun olacağını düşündüler. Bu
amaçla Internet istemcisi ile sunucusunun buluştuğu noktada, yani Common
Gateway Interface (Ortak Geçit Arayüzü) katmanında Web Server programının,
istemci programdan (browser) kendisine bilgi ve komutlar gönderilmesini
sağladılar. Örneğin bir Form’daki bilgilerin alınıp, bir dosyaya kaydedilmesi
için vereceğimiz komut, sitemizin bulunduğu bilgisayarın işletim sisteminde CGI
katmanı tarafından icra ettirilir. Bu manada CGI, Web Server’ın Internet
ziyaretçisinin Browser’ın gelen bilgi ve komutları işlediği veya kendi işletim
sistemine aktardığı noktadır. Bu gelişmenin sonucu olarak ortaya CGI programı
dediğimiz şeyler çıktı. Perl, C/C++, Delphi, Visual Basic ile yazılan bu
programlar Web Server tarafından çalıştırılır, ve vereceği komutlar işletim
sistemine iletilir.
CGI programları ile çok şey yapılabilir; fakat Web Server’a
aynı anda birden fazla kişi erişir ve aynı CGI programını çalıştırırsa, (yani
aynı anda aynı formun “Gönder” düğmesini tıklarlarsa), CGI programının birden
fazla “kopyası” çalışmaya başlar. Aynı anda aynı forma ulaşan kişi sayısı 4-5
ise bu belki sorun oluşturmaz; ama bu sayı arttıkça Web Server da adeta yerlerde
sürünmeye başlar! Özetle CGI programları Web Server’ı yavaşlatır.
Microsoft programcıları biraz geriden gelmekle birlikte
Server işine el attıklarında, istemci ile sunucunun etkileşmesini, bütün sistemi
yavaşlatan “haricî” programlar yerine, işletim sisteminin bir işlevi haline
getirebileceklerini düşündüler. Bunun yolu ise işletim sisteminin Uygulama
Programı Arayüzü (API, Application Programming Interface) denen
unsurlarını kullanmaktı. Nitekim Microsoft, oturup bir dizi Internet Server
API (veya kısaca ISAPI) tasarladı. ISAPI, tıpkı CGI gibi, Web Server
programının bulunduğu bilgisayardaki diğer programlarla alışverişini sağlar. Ne
var ki ISAPI’den yararlanan programlar üreterek bunları Web Server’ın emrine
vermek oldukça pahalı bir yol. Başka bir deyişle, bir formda Gönder düğmesinin
çalışabilmesi için sözgelimi Excel ayarında bir program yazdırtmak pek akıl kârı
olmasa gerek.
Bu noktada çeşitli firmalar ISAPI benzeri “yorumlayıcılar”
geliştirerek, düz yazı bir Script yazmakla ve bu Script’in içindeki komutları
Server programına icra ettirmekle, Web tasarımcısının hayatını çok
kolaylaştırabileceklerini gördüler. Microsoft’un bu noktadaki çözümü ASP oldu.
Yani bir bakıma “Server’a Aktif Sayfalar sunma” teknolojisi! NetObjects
firması kendi Server Extension’larını geliştirdi. Linux-Unix dünyasında bir
başka grup PHP dilinden yararlanarak PHP Sayfaları sistemini geliştirdi.
Bunlardan sadece MS’un ASP teknolojisi birden fazla dil ile Script kabul
edebilen teknoloji olarak, diğerlerinden ayrıldı. Bu noktaya birazdan geleceğiz;
ama önce “ASP nasıl çalışır?” sorusunun üzerinde duralım.
Ama önce biraz başa dönelim: Siz Web ziyaretçisi olarak
Browser’ınızın URL hanesine bir HTML sayfasının Internet yolunu ve adını yazıp
(örneğin, http://www.pclife.com.tr/index.htm) Git düğmesini tıkladığınızda veya
klavyede Enter/Return tuşuna bastığınız zaman ne olur? Web Server, Internet’in
bulutları arasından geçip kendisine gelen bu istem üzerine, index.htm’i bulur ve
yine aynı bulutların arasından sizin blgisayarınıza kadar gönderir. ASP
teknoloji ile üreteceğiniz sayfanın adının uzatması ise .asp şeklinde olur. Siz
bu kez URL hanesine bu dosyanın adını (örneğin
http://www.pclife.com.tr/index.asp) yazarsınız. Bu durumda Web Server, bu
sayfayı alıp, doğruca size göndermez: önce içindeki kodları icra eder. Sonra bu
kodları ayıklar ve geriye saf ve temiz HTML kalır. Ve bu sayfa, bizim
Browser’ımıza gönderilir.
Yukarıdaki son üç cümleyi lütfen yeniden okur musunuz?
Nelere dikkat ettiniz:
1. ASP sayfasının içinde kod vardır.
2. ASP sayfasının kodları Web Server tarafından icra
edilir.
3. ASP sayfası, Browser’a salt HTML olarak gelir.
Şimdi burada ASP ile Javascript’in farkını görebiliyor
musunuz? Javascript, HTML’in içine konuluyor; ama Server’da değil, Browser’da
çalışıyor. Peki CGI/Perl programı ile ASP’nin farkını görebiliyor musunuz? HTML
sayfasını Perl ile yazdığınız program üretiyor (print “<HTML>
”; kodunu
hatırlıyor musunuz?); oysa ASP’de ziyaretçiye gidecek HTML’i Server ve tasarımcı
birlikte üretiyorsunuz. Bu bakımdan, Javascript “istemci-tarafında” çalışırken,
ASP, CGI programları gibi, “sunucu-tarafında” çalışır. Bunun sonucu ise ASP ile
yazacağınız sayfaların, ziyaretçinin bilgisayarında kurulu Browser programı ne
olursa olsun (Netscape Navigator, Opera, Amaya, Internet Explorer), mutlaka
görüntülenecek olmasıdır. ASP sayfalarınıza koyacağınız VBScript kodları
Server’da icra edileceği için, ziyaretçinin Browser’ının örneğin VBScript’i
tanımayan Netscape olması, sizi hiç etkilemeyecek. Bununla birlikte ASP yoluyla
üreteceğiniz sayfalarda yer alacak dinamik HTML kodlarının, her Browser’da
mutlaka arzu ettiğiniz gibi yorumlanmayacağını unutmamalısınız.
Peki, ASP’nin içinde HTML ile kod yan yanadır, dedik. Nedir
bu kodlar? Hangi dille yazılır? ASP yoluyla Web Server’a vereceğiniz komutları
içeren bu kodlar, tabir yerinde ise, “arzu ettiğiniz bir Script dili ile”
yazılabilir. Bu VBScript olabilir; Javascript veya Jscript olabilir; hatta,
MS’un yeni teknolojisi olan Windows Scripting Host ile uyumlu olmak
koşuluyla, kendi Script dilinizi icad edip, bunu Web Server’a öğretecek
plug-in (ek program) geliştirebilirsiniz. İlk dönemlerinde ASP kodlarını
VBScript ile yazmak adeta şarttı. Giderek daha çok kaynakta ASP’nin Javascript
ile yazıldığını görüyorum. Fakat BT gibi sürekli gelişen ve yenilenen bir
alanda, Web tasarımcısın yeni bir dille tanışmasına imkan sağlamak için bu
kitapçıkta kodlarımızı VBScript ile yazacağız; dolayısıyla kitapçığın büyükçe
bir bölümü VBScript’e ayrılacak.
Şimdi kolları sıvayıp; işe başlıyoruz. Bir dizinin sonu
olan bu kitapçığı, Kroninukus computerium’a adıyorum. Sadece BT alanında
değil, tüm yaşamında yolun açık ve aydınlık olsun. Bu eğitime birlikte
başladığımızda “bilgisayar hastası” idin; eğer şimdi “usta bir bilgisayar
hastası” olmanı sağlayabildimse, ben görevimi yerine getirmiş sayılırım. Bundan
sonra sıra sende. Şimdi yardım edecek olan sensin. Bu yardımı kimseden esirgeme.
Kim olduğunu ve işlevini daima hatırla. Kalbinde duyduğun çağrıya her zaman
kulak ver.
Örnek Kodlar
İki kitapçıktan oluşan ASP rehberinin bütün örnek kodları
ve veritabanı dosyaları, http://www.pclife.com.tr/......... adresinden
edinilebilir. Ancak ASP öğrenirken örnek kodları kendiniz yazmalısınız.
Kodlamanın incelikleri ancak kodları siz yazarsanız öğrenilebilir. Bu
örneklerden sadece kendi yazdığınız kodlar hata verdiği ve hatayı bulmaktan
güçlük çektiğiniz zaman, karşılaştırma amacıyla yararlanmalısınız.
Teşekkürler
Bu kitapçıktaki kodların değişik ortamlarda sınanması için
için bana yardımcı olan dilini ve yazımını denetleyen dostlarım Mustafa
Durcan, Osman Nuri Hömek ve Armağan Ergon’a teşekkür ederim.
Varolan hatalar elbette bana aittir. Sevgili arkadaşım Mustafa Durcan’ın
bütün dizinin gelişimine katkısını daima şükranla hatırlayacağım.
ASP’ye Giriş
Bir HTML sayfayı sınamak için sadece Browser programına
ihtiyacınız var; bir HTML belgesini iki kere tıkladığınızda varsayılan Browser
açılacak ve bu sayfayı yorumlayarak, görüntüleyecektir. Fakat uzatması .asp
olan bir dosyayı iki kere tıkladığınızda ya Windows size bu dosyayı hangi
programla açmak istediğinizi soracak; ya da MS Visual Studio veya Adobe
Photoshop çalışacaktır. Bilgisayarınızda MS Visual Studio programı kurulu ise,
onun açılması normal: çünkü MS’un ASP dahil hemen hemen bütün Web tasarım
araçları Visual Studio’nun üyesi. Photoshop ise renk paletlerini belirlemek
üzere kullandığı dosyalara .asp uzatmasını veriyor. Bilgisayarınızda MS
Visual Studio kurulu değilse, fakat Photoshop varsa, ASP dosyalarınızın simgesi
Photoshop’a ait olacaktır.
MS Visual Studio’dan yararlanmıyorsanız, ASP dosyalarınızı,
(herhangi bir klasörün Görünüm menüsünden Klasör Seçenekleri maddesini seçerek
ve üçüncü sekme olan Dosya Türlerini tıkladıktan sonra ASP satırını
işaretleyerek ve Düzenle düğmesine basarak) Not Defteri ile ilişkilendirmek en
doğru yoldur. Bu, bu kitapçıktaki örnek ASP dosyalarını oluşturmak, düzenlemek,
değiştirmek için kullanacağımız başlıca programın da herhangi bir düzyazı
programı olduğu anlamına gelir. ASP üretim işini herhangi bir ortamda
yapabilirsiniz. Bunun için bilgisayarınızda mutlaka Windows kurulu olması
gerekmez. Fakat ASP dosyalarının çalışıp çalışmadığını sınamak için
sayfalarınızı gerçek Web Server’a göndermeden önce kendi bilgisayarınızda
çalıştırmanız gerekir. Bunu Kişisel Web Server (PWS) veya IIS ile yapacağız.
Bilgisayarınız Windows 95, 98, NT4 WorkStation veya NT4
Server ile çalışıyorsa, sisteminize bir Web Server programını siz kurmak
zorundasınız. Windows 2000 Professional veya Windows 2000 Server ise Kişisel Web
Server programını kendiliğinden kurar. Windows 98’e bir kişisel Web Server
kurmaya geçmeden önce bilgisayarımıza bir kimlik vermemiz gerekir:
Bilgisayarım/Denetim Masası/Ağ’ı tıklayarak açacağınız diyalog kutusunda ikinci
sekme olan Tanımlama’yı açın ve “Bilgisayar adı” kutusuna istediğiniz adı yazın.
Bilgisayarın ağ ortamında olması gerekmez.
Windows 98’e Kişisel Web Server kurmak için iki yol
izleyebilirsiniz. Windows 98 CD-ROM’unda Add-ons klasöründeki PWS dizininde
Kur.exe’yi tıklayın veya Windows NT Option Pack CD-ROM’unda Default.htm’i
açın. Bilgisayarınızın Windows 98 ile çalıştığını algılayacak olan program size
Personal (kişisel) Web Server (PWS) kurmayı önerecektir. Kişisel
Web Server’ı kurarken her iki durumda da ikinci diyalog kutusunda Minimum/En az
veya Typical/Tipik seçeneğini değil, Custom/Özel’i seçin ve açılacak yeni
diyalog kutusunda Microsoft Data Access Components (MS Veri Erişim Bileşenleri)
satırına işaret koyarak, Alt Bileşenleri Göster düğmesini tıklayın. Açılacak
seçme kutusunda ise ADO Documentation satırına işaret koyun. Bu belgelerden daha
sonra veri-yönlendirmeli Web Uygulaması yaparken yararlanacağız.
<asp0001.tif>
Kişisel Web Server kurulduktan sonra bilgisayarı yeniden
başlatmak gerekir.
//////////////////////KUTU//////////////////
Windows 98’e PWS kurarken, programın Microsoft Transaction
Server bölümüne ilişkin sistem kayıtları yapılırken, iki hata mesajı ile
karşılaşabilirsiniz (0x80004005 ve 0xfee662). Bu, orijinal Windows 98
CD-ROM’undaki PWS Kur programının, Windows Registry dosyasının büyük olması
halinde hata vermesinden kaynaklanıyor. Böyle bir durumla karşılaşırsanız,
Bilgisayarım/Denetim Masası/Program Ekle Kaldır aracılığıyla, Personel Web
Server’ı kaldırın. Bilgisayar kapanıp açıldıktan sonra, Windows 98 CD-ROM’unda
Add-ons/PWS dizinindeki bütün dosyaları, sabit diskinizde Temp dizinine
kopyalayın. Sonra http://support.microsoft.com/support/kb/articles/q246/0/81.asp
adresinde “Download Mstsetup.dll” satırını tıklayın. Mssetup.exe adlı bir dosya
bilgisayarınıza indirilince; bu dosyayı iki kere tıklayın ve dosyanın
genişletileceği yer olarak C:Temp’i gösterin; program Mstsetup.dll dosyasının
değiştirilmesini isteyip istemediğinizi sorduğu zaman “Tamam”ı tıklayın. Şimdi,
C:Temp’deki Kur.exe (Windows CD-ROM’unuz İngilizce ise Setup.exe) programını
iki kere tıklayın. PWS şimdi hatasız kurulacaktır.
///////////////////KUTU
BİTTİ//////////////////////////////
Windows NT4.0 Workstation veya Server’a IIS4.0 kurmak için
Option Pack CD-ROM’undaki default.htm’i çalıştırmanız ve açılacak Browser
penceresinde IIS’i kurma seçeneğini tıklamanız yeter. Burada da ADO
Documentation’ı sabit diskinize aktarabilmek için gerekli seçenekği işaretleyin.
Windows 98’e Kişisel Web Server kurulduğunda Masaüstü’nde
Yayımla (Publish) adlı bir simge belirecektir. NT sistemlerinde ise Başlat
menüsünde Programlar bölümüne IIS Manager satırı eklenir. Bu yollardan biriyle
PWS veya IIS’i çalıştırın.
Kişisel Web Server’da Personel Web Server Manager
(Yönetici) kutusu açıldığında soldaki araç çubuğunda Yönetici’nin çeşitli
bölümlerine gitmeniz için gereken gezinme simgelerini göreceksiniz. Şimdi,
açılan ana pencerede iki unsura dikkat edin:
<asp002.tif>
1. Kişisel Web Server’ınızın adı. Bilgisayarınızın adı
buraya Server adı olarak yazılmış olmalı. Biraz sonra, Internet’e koymadan önce
sınayacağımız ASP sayfalarını çağırırken, Browser’ın adres kutusuna burada
gördüğümüz adı yazacağız.
2. Kişisel Web Server’ın bilgisayarımızda sabit diskteki
gerçek adresi. Bu, sizin Kişisel Web Server’ınızın kök (root) dizinidir. Bu
genellikle C:inetpubwwwroot klasörüdür. Kişisel Web sitesi yaparsanız, sitenin
gerektirdiği bütün dizinleriniz ve dosyalarınız burada gördüğünüz dizinin içinde
olmalıdır. Yapacağımız ASP dosyalarını işte bu dizinin içine koyacağız.
Bunları bir kenara not ettikten sonra, soldaki araç
çubuğunda Gelişmiş simgesini tıklayın; ortadaki pencerede sanal dizinlerinizi
görüyorsunuz. Bunlardan Home’u seçin ve sağdaki “Özellikleri düzenle” düğmesini
tıklayın.
<asp003.tif>
Ana dizinin okuma, yürütme ve makro erişim haklarının
işaretli olmasına dikkat edin. İlerde kendinize Kişisel Web Server’ınızın kök
dizininde yeni bir dizin oluşturursanız (örneğin “resimler” gibi) ve içine
sitenizle ilgili dosyalar koyarsanız, Gelişmiş penceresinde Ekle düğmesini
tıklayarak bu gerçek dizini de sitenin sanal dizinlerinden biri haline
getirmeniz gerekir. Gerçek dizinin adı XYZ bile olsa, sanal dizin haline
getirirken istediğiniz sanal adı verebilirsiniz. Ama unutmayın, Browser’ın adres
hanesine gerçek dizin adını değil sanal dizin adını yazmanız gerekir.
Bu işlemleri IIS’te değişik araçlar ve diyalog kutularıyla,
fakat temel ilkeler itibariyle aynı şekilde yapabilirsiniz. NT4 sistemlerine
IIS’i kurmadan önce, Service Pack 3’ü uygulayın; Internet Explorer 5’i kurun.
Elinizde varsa Service Pack 4, 5 veya 6’yı en son uygulayın.
Bu noktada, ASP sayfalarınızı sınayacağınız bilgisayarda
Microsoft Internet Explorer programının kurulu bulunmasının şart olmadığını
hatırlatalım. ASP sayfalarınızı Netscape ile de sınayabilirsiniz.
Şimdi ilk ASP sayfamızı yapalım ve bununla kişisel Web
Server programının çalışıp çalışmadığını sınayalım. Buraya kadar anlamış
olduğunuz gibi ASP sayfası da HTML gibi düz yazı dosyasıdır; dolayısıyla
beğendiğiniz bir düz yazı programı ile ASP yazabilirsiniz. Şimdi açın en
beğendiğiniz düz yazı programını ve başlayın yazmaya. Eğer kelime-işlemci
kolayınıza gidiyorsa, dosyayı ASCII veya ANSI biçiminde kaydetmeyi unutmayın
(10’ncu satırın sonunda nokta olduğuna dikkat edin):
<HTML>
<HEAD>
<TITLE>ASP ILE ILK SAYFA</TITLE>
<META http-equiv="content-type" content="text/html;
charset=ISO-8859-9">
<META http-equiv="Content-Type" content="text/html;
charset=windows-1254">
</HEAD>
<BODY>
<H1><CENTER>Merhaba Dünya!</H1>
<H2>Bugün:
<% Response.Write(Date) %>.
</CENTER
</H2>
</BODY>
</HTML>
Bu dosyayı merhaba.asp adıyla kaydedin ve kendi
bilgisayarınızda kişisel Web Server’da veya ISS’te sınayacaksanız, bu
programları çalıştırın. Browser’ınızın URL hanesine, kişisel Server’ınızın
adıyla birlikte dosyanın adını yazın; ve ilk ASP programınız dünyaya Merhaba
desin.
<asp0004.tif>
////////KUTU///////////////////
ASP teknolojisi ile oluşturduğunuz sayfaları, yani içinde
ASP teknolojisinin gerektirdiği kodlar bulunan HTML dosyalarını, .asp
uzatmasıyla kaydederiz. Bu dosyalar talep edildiğinde, Web Server programı, eğer
ASP teknolojisini tanıyorsa, talep edilenin ASP sayfası olduğunu dosya adının
uzatmasından anlar; ve bu sayfayı ziyaretçiye yollamadan önce kendisi işleme
tabi tutar. ASP sayfamızdaki kodlar büyük bir ihtimalle bir takım dinamik işler
yapacak, örneğin hesaplamalar, araştırmalar, veri tabanından veri çekme, dosya
sisteminden dosya isteme gibi görevlerini yerine getirecek, ve ortaya çıkacak
olan HTML dosyasını ziyaretçiye gönderecektir. Diyelim ki bu kitapçıktaki
örnekleri yaptınız ve ücretsiz Site yeri edinmiş olduğunuz Hosting
firmasının bilgisayarındaki sitenize yerleştirdiniz. Sonra Browser’ınızın URL
hanesine bu ASP dosyasının adını yazdınız ve sayfayı talep ettiniz. Karşınıza,
ya ASP sayfasının içindeki kodları görüntüleyen veya sadece sayfanın HTML
unsurlarına yer veren bir sayfa geldi! Bu Server’ınızın ASP anlamadığını
gösterir. ASP sayfalarınızı ASP-uyumlu Web sunucularında çalıştırabilirsiniz.
Sitenizde ASP sayfaları bulunacaksa ve ücretli evsahibi firmalardan site alanı
edinecekseniz, sunucunun ASP-uyumlu olmasına dikkat edin.
//////////////KUTU BITTI////////
Şimdi, ilk ASP’mizi çalıştırdığımıza göre, biraz teknikten
söz edebiliriz. HTML’in ziyaretçinin bilgisayarında çalıştığını biliyorsunuz;
istemci Browser, sizin URL hanesine adını yazdığınız HTML dosyasını yine
adresteki sunucu Web Server’dan ister. Web Server da bu dosyayı bulur ve içinde
kayıtlı resim ve diğer unsurlarla birlikte istek sahibine gönderir. Fakat kimi
zaman Server’a bize sadece bir dosyayı göndermesini değil, fakat bu dosyanın
içinde kayıtlı komutlar varsa onları icra etmesini de bildirebiliriz. Bunu
yapmanın bir yolu CGI programlarıdır. Bir diğer yolu ise ASP’dir. Web Server,
kendisinden bir ASP belgesi talep edildiğinde, kendi kendine “Dur bakalım! ASP
istendiği zaman hemen alıp göndermek yok, önce bunu ASP.DLL programına
gönderelim.. Ondan sonra işimize devam ederiz!” der.
<asp0005.tif>
ASP.DLL, kendisine bir .asp dosyasının geldiğini görünce,
hemen ASP’lerin Anayasası olan global.asp’nin çalışıp çalışmadığına bakar.
global.asa, tıpkı diğer ASP dosyaları gibi bir düz yazı dosyasıdır ve ASP
programlarının çalışma koşullarını düzenleyen kuralları içerir. (Bu dosyayı
sırası gelince ele alacağız.) Yukarıdaki örnekte gördüğümüz gibi ASP dosyası hem
HTML kodları içerir, hem de içinde bir Script diliyle yazılmış kodlar vardır.
ASP’ye “program” özelliği kazandıran bu Script dili ile yazılmış kodlardır.
ASP.DLL, önce gelen .asp dosyasında hangi Script dilinin kullanıldığına
bakar ve bunun için gerekli ortamı oluşturur; yani bu Script dilini yorumlayacak
programı çalıştırır; bu program Script’i yorumlar ve icra edilecek komutları
icra eder; ASP.DLL, icra edilen komutlar, işletim sisteminin yardımını istiyorsa
(örneğin bir veritabanından veri çekmek gibi, veya dosya sistemine bir dosya
açtırmak, yazdırmak, sildirmek gibi) bu yardımın edinilmesini de sağlar. Bütün
bu işlerin sonunda sizin yazdığınız HTML kodlarına ek yapmak (örneğin bir
tablonun içini, çekilen verilerle doldurmak veya dosya sisteminden edinilen bir
dosyanın içeriğini sayfaya aktarmak gibi) gerekiyorsa bu ekleri ASP.DLL yapar.
ASP.DLL, kendisine sevk edilen dosyayı satır satır okur ve
önce dosyadaki ASP kodlarının gerektirdiği HTML değerlerini bulur; yani önce ASP
icra edilir, gereği yerine getirilir. Sonra HTML bölümleri ile birleştirilip
sonuçta sunucuya saf ve temiz bir HTML sayfası gönderilir. Bu sayfanın içinde
bir satır bile ASP kodu bulunmaz. Eğer sayfanıza ziyaretçinin Browser’ında
çalışması amacıyla Javascript veya VBScript kodları koydu iseniz, elbette bu
kodlar HTML’in parçası olarak ziyaretçiye gidecektir. Fakat giden sayfada artık
ASP’ye ilişkin hiç bir şey kalmamış olacaktır.
Biliyorsunuz, mevcut sürümleri itibariyle Browser
programları içinde Netscape VBScript dilini anlamaz. ASP sayfalarımızda
istediğimiz Script dilini kullanabiliriz; VBScript de kullanabiliriz.
Netscape’in VBScript anlamamasıyla, ASP sayfalarımızda VBScript kullanmamızın
bir ilgisi yoktur; çünkü ASP sayfasının ortaya çıkartacağı HTML kodunda ASP
dolasıyla VBScript bulunmayacaktır; dolayısıyla ASP sayfalarınız, Netscape
tarafından da anlaşılıp, görüntülenebilecektir. Tabiî ortaya çıkacak HTML
sayfasının Netscape tarafından arzu ettiğiniz gibi görüntülenebilmesi için
Netscape’in anlayabildiği dinamik HTML unsurlarına yer verme zorunluğunuz hâlâ
devam ediyor.
ASP tekniğinin nasıl çalıştığını anladığımıza göre şimdi
biraz terminoloji serpiştirelim ki, Webmaster meslektaşlarınızla biraraya
geldiğinizde, gerçekten ASP ile mesela Javascript arasındaki farkı bildiğiniz
belli olsun. ASP bir Server-Side Script teknolojisidir. Internet’te
istemci ile sunucu arasındaki çizginin sunucu tarafına Server-Side (Sunucu
Tarafı), istemci tarafına da Client-Side (evet, doğru tahmin ettiniz:
İstemci Tarafı) denir. Server-Side’da çalışan Script programları da “Server-Side
Script” (Sunucu Tarafı Script’i) adını alır. Dolayısıyla şöyle bir sayfa
yaparsanız (merhaba.htm), bu sayfada Client-Side Script
teknolojisi kullanmış olursunuz:
<HTML>
Copyright © Vedobay.Com - En Duygusal Ask Siirleri Burada Tüm hakları saklıdır.