Dinamik içerik sunmak için kullanıcının tercih ettiği Web tarayıcı ile sınırlı değilsiniz, sunucu taraflı bir teknoloji olan ASP ile Web tarayıcısından bağımsız değişken sayfalar hazırlayabilirsiniz.
Temel HTML kodlarının kullanımının anlatılmasını uzun süre önce tamamladık, bir kaç ay ard ard yayınladığımız kullanışlı JavaScript programcıkları ile de sayfalarınızın işlevini arttırmayı amaçladık. Siz Web Okulu okuyucularının ufkunu genişletmek, yeni teknolojilerden haberdar olmanızı ve kullanabilmenizi sağlamak için bu sayıdan itibaren öğrenmesi zevkli ve gelecek vaadeden teknolojilere değineceğiz. Anlatmaya başlayacağımız ilk teknoloji ASP. İki sayıdan az olmayan ASP yazımızı zevkle okuyacağınızı ve uygulayacağınızı umuyoruz.
ASP ile ilgili Web adresleri |
İşte ASP konusunda size en çok yardımı dokunacak Web siteleri. Bu sitelerde
teknoloji ile ilgili dökümanların yanısıra ücretsiz bileşenler, püf noktaları
ve kodlar bulacaksınız.
http://www.microsoft.com/iis
|
Çok geniş bir kullanım alanı olan ASP, scripting diye tabir edilen VBScript, JavaScript gibi her türlü ham kodu kullanabilir, sunduğu kolay anlaşılır doğal dili ile orta derece HTML bilen kimseler tarafından bile kolayca kavranabilir. Bir scripting dili olsa bile ASP, sunucu tarafında uygulama çalıştırmanıza da izin verir. Web sunucunuza bağlanan kullanıcı sizin tarafınızda neler olup bittiğini bilmezken kendisine gelen HTML formatındaki sonuca baktığında yazdığınız ASP kodlarını değil, Internet sunucusunun onun için hazırladığı HTML kodlarını görür.
ASP'nin Netscape Navigator / Internet Explorer /Opera gibi Web tarayıcılarından bağımsız olmasının yanısıra en büyük avantajlarından biri kullandığınız teknolojilerin, scriptlerin saklı kalmasıdır. Normal şartlarda, dinamik içerik hazırlamak için HTML sayfasında emek dökerek kullandığınız scriptler diğerleri tarafından "beğenilip" kolayca tekrar kullanılabilirken ASP için böyle bir şey söz konusu değildir. Uyanık kullanıcılar ASP sayfasını tıpkı başka bir dosya gibi bilgisayarlarına kaydetmek istediklerinde ise Web sunucunuz bunu anlayacak ve yine sayfanın hazırlanmış halini kullanıcıya sunacaktır.
ASP NASIL İŞLİYOR?
ASP arabiriminin işleyişi oldukça basit, sisteminize ASP eklentisini
yüklediğinizde Internet Information Server'ınızın zaten sahip olduğu scripting
özellikleri işlemeye başlıyor. İstemci tarafı sunucudan normal bir HTML
sayfasını istediğinde, IIS bu dosyayı sabit diskten çağırarak istemci tarafındaki
Web tarayıcıya yollar. İstemci tarafından yapılan istek bir ASP sayfasıysa
IIS bunu sayfanın uzantısından anlayarak ASP eklentisini devreye sokar.
ASP eklentisi sayfa içindeki scriptleri yine IIS'a çalıştırdıktan sonra
oluşan HTML sayfasını istemci tarafındaki Web tarayıcısına yollar, bu arada
"kuzu" durumunda olan kullanıcının sunucuda gerçekleşen işlemlerden haberi
olmaz. ASP sisteminin dezavantajı Web sunucunuza daha fazla yük getirmesidir.
Normal bir HTML sayfasının sabit diskten alınarak sunulması sunucuya fazla
yük getirmezken ASP sayfalarının işlenmesi sunucunuzun değerli bellek ve
işlemci kaynaklarından daha fazla yararlanacaktır. Yukarıdaki işlemleri
anlatırken ASP'nin getirdiği en büyük avantajlardan biri olan veritabanı
kullanımına hiç değinmedik, ASP, sunucu üzerinde yüklü ODBC veritabanlarını
kullanabilir, şirketinize ait veritabanlarını Intranet'inize veya Internet'e
açabilir.
ASP'Yİ NASIL KULLANMAYA BAŞLAYACAĞIM?
Web sitenizin dilediğiniz bölümlerini ASP'ye göre düzenlemeden önce
bir takım şeyler yapmanız gerekiyor. Windows NT kullananlar öncelikle sistemlerine
tamamen ücretsiz olan Microsoft Internet Information Server (IIS) 3 veya
4'ü kurmalılar. IIS'ı kurduktan sonra Microsoft'un sitesinden (http://www.microsoft.com/iis)
güncel bir sürümünü edebileceğiniz ASP eklentisini yüklemelisiniz. Internet
Information Server yapısı gereği bir Web uygulamasının kendisi üzerinde
çalıştırılabilmesi için uygulamanın çalıştırıldığı klasöre bu izninin verilmiş
olmasını ister. Bu yüzden ASP'lerin konulacağı klasörlere "execute" hakkı
verin, IIS execute hakkı verilmiş bir klasörün alt klasörlerine de otomatik
olarak bu hakkı tanır.
Web sayfalarını sunmak için Windows 95 işletim sistemi altında çalışan Personal Web Server'ı tercih edenler de ASP'yi hemen kullanmaya başlamakta pek zorlanmayacaklar. ASP eklentisini yükleyip ilgili hakları verdikten sonra hemen, vereceğimiz başlangıç örneklerini deneyebilirler. Web sayfalarını Unix veya başka işletim sistemleri üzerinde tutan veya bir Web sunucusuna sahip olmaksızın sayfalarını sunmak için ücretsiz servislerden faydalanan okurların işi ise biraz daha zor.
Chilisoft (http://www.chilisoft.com/) adlı yazılım firması değişik işletim sistemleri için ASP eklentileri sunuyor, ayrıca bir Web sunucusuna sahip olmayanlar Internet'te ASP dosyalarını ücretsiz olarak sunan hosting firmalarından faydalanabilirler. Altavista Web tarayıcısında "ASP hosting" anahtar kelimeleriyle yapacağınız araştırma sizi bu firmalara ulaştıracaktır.
ASP NE İŞİME YARAYACAK?
Eskiden taş düşürtecek kadar zahmetli olan HTML formlarını değerlendirme
işi ASP ile "çocuk oyuncağı" haline getirilmiş, önceleri bu işi yapmak
için CGI (Common Gateway Interface) uygulamaları yazmış, hazır ve esnekliğe
izin vermeyen tek platformlu form değerlendirme programları kullanmış olabilirsiniz,
Web sitenizi ASP tabanlı bir hale getirdiğinizde tüm bunlardan kurtulmuş
olacaksınız. ASP yetenekleriniz geliştikten sonra sunucu üzerinde yüklü
ODBC veritabanlarını kullanan ActiveX uygulamaları yazmaya başlayabilirsiniz
veritabanlarına bilgi yazabilir ve okuyabilirsiniz. VBScript, JavaScript,
PERL veya REXX gibi bir scripting dili hakkında bilginiz varsa aynı zamanda
ASP biliyorsunuz demektir çünkü ASP, IIS 4'ü veya dışardan yüklenebilen
modülleri kullanarak bu dilleri anlayabilir. ASP aynı zamanda sunucu üzerinde
çalışan Microsoft BackOffice ailesi uygulamalardan maksimum derecede faydalanır,
bu işleve sahip önceden hazırlanmış ASP modülleri başka sayfalar içine
gömülebilir.
ASP İLE PROGRAMLAMAYA BAŞLANGIÇ
Yukarıda ASP'ye kısa bir giriş yaptık, anlattıklarımızı pekiştirmek
için dilerseniz iki tane örnek verelim. ASP sayfalarını kullanabilmek için
yukarıda anlattığımız olayları gerçekleştirdiyseniz execute hakkı verdiğiniz
bir klasörde aşağıda kodlarını verdiğimiz ASP sayfalarını hazırlayın.
http://sunucu_ismi/klasor/asp_ismi.asp
komutunu kullandığınızda Web tarayıcınız ASP kodlarının altında verdiğimiz
HTML dökümlerini oluşturacaktır.
Sunucu üzerindeki ASP dosyasını çağırdığınızda boş bir sayfa geliyorsa
Internet Information Server'ınız üzerine ASP eklentisi yüklü değildir.
Kodlar çağrıldığında hata mesajı geliyorsa IIS'ınızın sürümü çok düşüktür
veya ASP kodlarını doğru olarak girmemişsiniz demektir.
1.Örneğimiz
ASP KODLARI
<HTML>
<HEAD><TITLE>
Script yardımıyla değişik ebatlarda yazılar...
</TITLE></HEAD>
<BODY BGCOLOR=#FFFFFF>
<% for i = 3 to 7 %>
<FONT SIZE=<% = i %>>Biz biz idik biz idik otuziki kız idik.</FONT><BR>
<% next %>
<BR>
</BODY>
</HTML>
KULLANICI TARAFINDA GÖRÜLEN
<HTML>
<HEAD><TITLE>
Script yardımıyla değişik ebatlarda yazılar...
</TITLE></HEAD>
<BODY BGCOLOR=#FFFFFF>
<FONT SIZE=3>Biz biz idik biz idik otuziki kız idik.</FONT><BR>
<FONT SIZE=4>Biz biz idik biz idik otuziki kız idik.</FONT><BR>
<FONT SIZE=5>Biz biz idik biz idik otuziki kız idik.</FONT><BR>
<FONT SIZE=6>Biz biz idik biz idik otuziki kız idik.</FONT><BR>
<FONT SIZE=7>Biz biz idik biz idik otuziki kız idik.</FONT><BR>
<BR>
</BODY>
</HTML>
2. Örneğimiz:
ASP KODLARI
<html>
<title>ASP ile rasgele püf noktası...</title>
<%
' Sayfada göstermek üzere 1'den 10'a kadar bir püf noktası seç.
Randomize
TipNumber = Int(Rnd*10)
' İçinde 10 adet püf noktası olan dosyayı aç
Set FileObject = Server.CreateObject("Scripting.FileSystemObject")
Set Instream = FileObject.OpenTextFile (Server.MapPath ("/deneme")
& "\puf.txt", 1, FALSE, FALSE)
' Göstermek istediğim püf noktasına kadar olanları atla
For i = 1 to TipNumber -1
InStream.SkipLine()
Next
' Dosyadan alınan satırı PufNoktasi değişkenine ata.
PufNoktasi = Instream.ReadLine
%>
<FONT FACE="Verdana" SIZE=4><B>
<%= PufNoktasi %></B></FONT>
</html>
KULLANICI TARAFINDA GÖRÜLENLER
<html>
<title>ASP ile rasgele püf noktası...</title>
<FONT FACE="Verdana" SIZE=4><B>
Rasgele püf noktası * 5</B></FONT>
</html>
ASP sayfalarının sunucunuzda çalışan veritabanı modülünü kullanarak veritabanlarına erişebileceğini ve buradaki verileri Web'e aktarabileceğini söylemiştik. Form içeriğine girilen verileri ASP sayfalarına yollamak oldukça basittir sadece ASP sayfasında bir değişkene form kontrollerinden birinin ismini atamak yeterli. Aşağıdaki örnekleri inceleyince parametre mantığını daha iyi anlayacaksınız.
GET ile hazırlanmış formlarda değişkenlerin toplam karakterinde bir
sınırlama vardır. Bunun yanısıra geçtiğiniz parametreler Web tarayıcınızın
URL kutusunda görülecektir. ASP Script'inin bu tip formlardaki verileri
alabilmesi HTML kısmında ve script içinde aşağıdaki gibi kodlar kullanılması
gerekir:
Formu oluşturmak için:
<form action="deneme.asp" method=GET>
.... Diğer form üyeleri ....
<input type=submit><input type=reset>
</form>
ASP Script'inde okumak için:
<%degisken=request.querystring("form_bolgesi")%>
POST ile hazırlanmış formlarda ise karakter ve uzunluk sınırlaması
GET kadar sınırlı değildir. Web tarayıcınız geçtiğiniz değişkenleri adres
penceresinde göstermeyecektir. ASP Script'inin bu tip formlardaki verileri
alabilmesi HTM