VBScriptin bir diger duruma bakarak karar verme ifadesi, Select Case (Durum Seç) yapisidir. Peki nasıl çalışır:
Durum Seç (Durumlarin listesi veya durumlari belirten bir degisken)
Durum 1 : Yapilacak isler
Durum 2: Yapilacak isler
Durum 3: Yapilacak isler
Durum n: Yapilacak isler
Seçmeyi Bitir
Yani;
Select Case degisken
Case 1
— yapilacak isler —
Case 2
— yapilacak isler —
Case3
— yapilacak isler —
End Select
VBScript, verdiginiz durum listesine veya içinde çesitli degerler bulunan (bu degerleri bir sekilde degiskene yükleyecek olan sizlersiniz) degiskene bakarak, bu degiskenin her bir degerini bir durum sayacak ve verdiginiz durumlardan hangisini tutuyorsa, ona ait komut dizisini icra edecektir.
Bir örnekle görelim:
<% ay = month(date()) gun = day(date()) sene = year(date()) Select Case ay Case "1" StrAy = "Ocak" Case "2" StrAy = "Subat" Case "3" StrAy = "Mart" Case "4" StrAy = "Nisan" Case "5" StrAy = "Mayis" Case "6" StrAy = "Haziran" Case "7" StrAy = "Temmuz" Case "8" StrAy = "Agustos" Case "9" StrAy = "Eylül" Case "10" StrAy = "Ekim" Case "11" StrAy = "Kasim" Case "12" StrAy = "Aralik" End Select %>
Günün Tarihi :
<%=gun%> <%=strAy%> <%=sene%>
Bu kodu yazip çalistirdigimizda programimiz üç tane farkli degiskeni isleme sokuyor. Bunlar ay,gün ve sene. Malum, bu degiskenler, kendilerine bir deger atandiginda bir ise yararlar. Bu yapmak içinde VBScriptin hazir fonksiyonlarindan olan
month(date())
day(date())
year(date())
ifadelerini kullaniyoruz.Aslinda bunlar, Date() fonksiyonunun alt fonksiyonlari.
Daha sonra kendisine deger yüklenen ay degiskeni Select case ifadesinde durum konumuna yerlestiriliyor. Bu su demek: Ey asp.dll, ay degiskenini al, bu degiskenin degisik durumlarina göre asagida belirtecegim görevleri yerine getir! Ay degiskeninin 1,2,3,4,5,6,7,8,9,10,11,12 olmasina göre farkli durum islevleri tanimliyoruz. Tahmin edeceginiz üzere bunu case 1, case 2,… ifadeleri ile yapiyoruz.
Bu sayede ay degiskeninin aldigi sayisal degere göre birer StrAy degiskeni tanimlayabiliyoruz. Bu islemleri tamamladiktan sonra End Select komutu ile seçim islemini durduruyoruz.