Giriş yapmadınız.

Sayın ziyaretçi, AllaTurkaa sitesine hoş geldiniz. Eğer buraya ilk ziyaretiniz ise lütfen yardım bölümünü okuyunuz. Böylece bu sitenin nasıl çalıştığı konusunda ayrıntılı bilgilere ulaşabilirsiniz. Eğer sitenin tüm olanaklarından faydalanmak istiyorsanız, kayıt yaptırmayı düşünmelisiniz. Bunun için kayıt formunu kullanabilir ya da bu bağlantıya giderek kayıt işlemi hakkında daha fazla bilgi alabilirsiniz. Eğer önceden kayıt yaptırdıysanız buradan giriş yapabilirsiniz.

deniz_zined

Orta Düzey

  • Konuyu başlatan "deniz_zined"

Mesajlar: 507

Kayıt tarihi: Aug 26th 2008

  • Özel mesaj gönder

1

Saturday, 15.11.2008, 19:56

ASP'ye Giris/Bölüm-11

VBScript’de Program Kontrolü


İster Script diliyle, ister gerçek programlama diliyle yazılsın, bir bilgisayar programının varlık sebebi, çeşitli durumları değerlendirerek, belirli durumlarda belirli kararlar verebilmesidir. Bunu programın kontrol öğelerini kullanarak yaparız. Programlar, bu öğeler sayesinde karşılaştırma yaparlar; belirli durumların oluşup oluşmadığını sınarlar; veya belirli bir durumun oluşmasına veya sona ermesine bağlı olarak bir iş yaparlar veya yapmazlar. Bunu sınamalarla (koşullu ifadelerle) veya döngülerle sağlarız. Kimi zaman da, programa (programın mantığı çerçevesinde) istediğimiz anda yapmakta olduğu işi durdurarak, başka bir işi yapmasını bildirebiliriz. Bunlara da Süreçler (veya Prosedürler) denir. (Adındaki Basic’e bakarak, VBScript’i basit bir dil sanmıyordunuz, umarım!)


Mantıksal Sınamalar


VBScript’te programın karar vermesini sağlayan ilk kontrol ögesini “eğer ... ise... yap!” şeklinde özetleyebiliriz. VBScript bu işlemi iki ayrı ifadeyle yaparız:


If.. Else


VBScript’in vereceğiniz bir durumun bulunup bulunmadığını sınamasını sağlar. Genel yazım kuralı şöyledir:


If şart Then


[şart doğru ise yapılacak işler]


Else


[şart doğru değilse yapılacak işler]


End If


Bunu bir örnekle ifade edelim: Eğer saat 12’den önce ise sayfaya “Günaydın” yazdır; saat 12’den sonra ise “Tünaydın” yazdır.


Fakat burada bir eksiklik var: Saat 18’den sonra ise sayfaya “İyi akşamlar!” yazdırmamız daha doğru olmaz mı? If döngüsü kendi içinde sınırsız Elseif (ikinci şartlı döngü) imkanı vererek bize bunu sağlar. Her Elseif’i yeni bir If gibi düşünebilirsiniz. İşte şu senaryoyu gerçekleştirecek kod örneği (hosgeldiniz01.asp):


<HTML>


<HEAD>


<TITLE>ASP ILE SAATE GORE SELAM</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>


<H2>


<CENTER>


<%


If Hour(Now) <12 Then


Response.Write "Günaydın! "


ElseIf Hour(Now) >= 18 Then


Response.Write "İyi akşamlar! "


Else


Response.Write "Tünaydın! "


End If


Response.Write "<BR>"


Response.Write "Site Onarım Sitesine Hoşgeldiniz"


%>


</CENTER>


</H2>


</BODY>


</HTML>


Bu programı çalıştırdığınız zaman, çalıştırdığınız saate göre sayfadaki selamın değiştiğini göreceksiniz. (Bu örnekte, sadece şartlı döngü işlemi yapmıyoruz; fakat aynı zamanda Hour(Now) fonksiyonu ile tanışıyoruz ve sayfadaki bütün unsurları ASP yöntemiyle yazdırıyoruz! Fakat şimdilik bu iki unsurun üzerinde de durmayın.) Programımız nasıl çalışıyor? Yukarıda başka vesile ile VBScript’in kullanılmaya hazır fonksiyonları vardır, demiştik. Bunlardan biri de o andaki saati ve tarihi bildiren Now() fonksiyonudur. Bu fonksiyondan dönen değerle bu andaki saati öğreniyoruz; ve bunu önce 12 ile karşılaştırıyoruz. Fonksiyondan dönen değer, eğer 12’den küçükse, programımız Response (Karşılık) Nesnesi’nin .Write Metodu’nu kullanarak (Nesneler ve Metodlar meselesi üzerinde de durmayın!) ziyaretçinin Browser penceresine “Günaydın” yazdırıyor