ASP'ye Giriş - 3

Dökümanın ilk bölümü linktedir : http://www.tahribat.com/Dokuman-Asp-Ye-Giris-1-370/

Dökümanın ikinci bölümü linktedir : http://www.tahribat.com/Dokuman-Asp-Ye-Giris-2-371/

Mantık Kontrolleri ve Döngüler.

Mantık kontrolleri her gelişmiş proğramlama dilerinde kesinlikle vardır olmazsa olmazıdır dillerin yani bilgisayar sizin yerinize bir karar verebilir. örneğin üyenin bugün doğum günüyse şunu yap değilse şunu yap gbisinden kontrolleri yaptırabiliriz koda geçelim daha iyi anlayacaksınız.

If - Then - Else :

verdiğiniz bir durumun olup olmadığını denetlemeye yarar yani şöyle diyelim

<%
if Şartımız then
response.write "Şart doğru olduğu taktirde olacak olaylar..."
else
response.write "Şart doğru değil ise olacak olaylar...."
end if
%>

Şeklinde yapısı vardır hemen bir örnek yapalım daha iyi anlayın...

<%
gun = "Pazartesi"
if gun = "Pazartesi" then
response.write "Bugün Pazartesi"
else
response.write "Bugün Pazartesi Değil"
end if
%>

Çıktımız şöyle olacaktır :

Bugün Pazartesi

örneğin bir üyelik sistemi yazdınız diyelim ve kullanıcılara 5 e kadar yetki verdiniz Şu ise Şunu yap vs. diyebilirsiniz veya şundan yüksekse bunu gör diyebilirsiniz. Diyelim yetkisi 3 olan bir kullanıcı sisteme giriş yaptı ve siz yetki değerini çektiniz yani yetki değişkenimiz belli yetki = 3 diyelim örneğin

<%
if yetki = 3 then
response.write "Yetkiniz 3"
else
end if
%>

Çıktımız ne olur ? kullanıcın yetkisi 3 demiştik yani yetki = 3 varsaymıştık o zaman çıktımız

Yetkiniz 3

Şeklinde olacaktır. Şimdi daha fazlasını yapalım hemen bu örnekle ilgili  kullanıcın yetkisi bu sefer diyelim 4 olsun yani yetki = 4 değeri geliyor.

<%
if yetki = 1 then
response.write "Yetkiniz : 1"
Elseif yetki = 2 then
response.write "Yetkiniz : 2"
Elseif yetki = 3 then
response.write "Yetkiniz : 3"
Elseif yetki = 4 then
response.write "Yetkiniz : 4"
else
response.write "Yetkiniz 4 den yüksek"
end if
%>

Kodun analizine gelirsek kullanıcın yetkisi 4 varsaymıştık bu halde Çıktımız :

yetkiniz : 4

Şeklinde olacaktır... kodlarda bir değişiklik oldu ve gördüğünüz gibi then else den ziyade elseif geldi
then ve else ile 2 şart gerçekleştirebiliyorduk elseif ile bunu daha fazla yapabiliyoruz amaç o kodu anladıysanız mantığıda anlamışınızdır. yani kodumuzun mantığı şu şekildedir.

<%
if şart then
response.write "bu şart gerçekleşirse bunu yaz."
elseif şart then
response.write "buda başka bir şart gerçekleşiirse bunu yaz."
elseif şart then
response.write "istediğim kadar şart koşabilirim bu olursa bunu yaz..."
else
response.write "yukarıda verdiğim şartlar gerçekleşse bunu yaz...."
end if
%>

bunu ilerde hazır fonksiyonları kullanırkende göreceksiniz mesela kısa bir örnek vermek gerekirse. Mesela MonthName(5) kodumuz bize mayıs olarak geri döner yani şöyle

<%ay = MonthName("12")%>
<%=ay%>

Çıktımız ise :

Aralık Olacaktır.

Bu örnekten yola çıkarak

<%
ay = MonthName("5")
if ay = "Ocak" then
response.write "Ocak Ayındayız..."
elseif ay = "Mart" then
response.write "Mart Ayındayız..."
elseif ay = "Mayıs" then
response.write "Mayıs Ayındayız..."
else
response.write "Diğer aylardan birindeyiz..."
end if
%>

Çıktımız :

Mayıs Ayındayız. Olacaktır Mantığı anlamışınızdır umarım peki şart kısmında neler kullanabiliriz ? Sadece eşit mi olacak eşit olmayada bilir büyükse şunu yap küçükse bunu yap da diyebiliriz.

En çok kullanacaklarınızı ben yazıyorum ve karşısınada şartını anlatıyorum a = 10 olarak kabul ediyorum.

Eşitlik  =  (Eşitse) 


<%
if a = 10 then
response.write "a sayısı 10"
else
response.write "a sayısı 10 değil"
end if
%>

Çıktımız :
a sayısı 10

Eşitsizlik  <>  (Eşit Değilse)

<%
if a <> 10 then
response.write "a 10 a eşit değil"
else
response.write "a 10 a eşit"
end if
%>

Çıktımız :
a 10 a eşit değil

Küçüktür  <  (Küçüse)

<%
if a < 50 then
response.write "a sayısı 50 den küçük"
else
response.write "a sayısı 50 den büyük"
end if
%>

Çıktımız :
a sayısı 50 den küçük

Büyüktür  > (Büyükse)

<%
if a > 5 then
response.write "a sayısı 5 den Büyük"
else
response.write "a sayısı 5 den Küçük"
end if
%>

Çıktımız :
a sayısı 5 den Büyük

Küçük Eşittir  <=  (küçük veya eşitse)

<%
if a <= 5 then
response.write "a sayısı 5 den Küçük"
else
response.write "a sayısı 5 den Büyük"
end if
%>

Çıktımız :
a sayısı 5 den Büyük

Büyük Eşittir  >=  (büyük veya eşitse)

<%
if a >= 5 then
response.write "a sayısı 5 den Büyük"
else
response.write "a sayısı 5 den Küçük"
end if
%>

Çıktımız :
a sayısı 5 den Büyük 

Select Case :

Durum seç anlamına geliyor if then else ye benziyor if then else de çok detaya girdiğim için bunda girmeme gerek yok zaten ifthen else anladıysanız bunu anlarsınız rahatlıkla mantık aynı mantık.

<%
Saat = 12
select case saat
  case 7,8,9,10,11
  response.write "Günaydın!"
  case 12,13,14,15,16,17,18
  response.write "Tünaydın"
  case 19,20,21,22
  response.write "İyi akşamlar"
  case else
  response.write "İyi geceler"
end select
%>

Çıktısı :
Tünaydın

eğer saat değişkeni 12 değilde 20 olsaydı eğer o zaman çıktımız İyi geceler olacaktı...

Döngünün mantığı şudur bir işlem oluncaya kadar devam et mesela 1 den 10 e kadar saydırmamız gerekiyor bunu döngüyle yapacağız nasıl mı ? görelim.

For - Next Döngüsü :

<%
for sayi=0 to 10
response.write (sayi) & ""
next
%>

Çıktısı :
0
1
2
3
4
5
6
7
8
9
10

Yani kodumuzun anlamı 1 den başla 10 a kadar yazdır. ile satır atla ve bu işlemi 10 a kadar devam ettir mantık budur ! demek kodumuzua çeşitlendirirsek şöyledeyapabiliriz mesela step 2 yazarsak ne olur ? hemen deneyelim :)

<%
for sayi=0 to 10 step 2
response.write (sayi) & ""
next
%>

Çıktısı :
0
2
4
6
8
10

Anladığınızı varsayıyorum anlamadıysanız adam gibi okuyun baştan bunları çok kullanacaksınız sonuçta...

While wend döngüsü

şimdi şöyle düşünün bir döngü kuracağız ve kendini sonlandırsın yani şundan başla şu oluncaya kadar devam et gibi..

<%
  While sayi <= 10
  Response.Write(sayi) & ""
  sayi = sayi + 1
wend
%> 

Çıktımız :

1
2
3
4
5
6
7
8
9
10

şeklinde olacaktır veritabanı olaylarında bunu kullanacağız geçtim.

Do-loop döngüsü

Yani Koşul devam edene kadar sende tekrarla döngüsü desek döğru olur

<%
  say = 0
  i = 5
  Do while i = 10
  i = i + 1
  say = say + 1
  Loop
  response.write "Döngü "&say&" kez tekrarlandı."
%>

Çıktımız :
Döngü 5 kez tekrarlandı.

açıklayacak olursak i değerine 5 dedik ve i 10 olaa kadar devam et döngüye dedik i 10 olunca döngü bitti ve say ile kaç kere döngü olduğunu gördük mesele bu.

Tarih:
Hit: 2350
Yazar: BuZuL



Yorumlar


Siftahı yapan siz olun
Yorum yapabilmek için üye girişi yapmalısınız.