HarbiForum  

ASP Süreçler (Prosedürler)

PHP & ASP bölümde ASP Süreçler (Prosedürler) konusunu görüntülüyorsunuz.VBScript'te programın akış kontrolünde kullanacağınız bir diğer grup araç ise örneğin Javascript veya Perl'de fonksiyon ...
Geri git   HarbiForum > Bilgisayar & Teknoloji > Programlama Dilleri > PHP & ASP

Kayıt ol Yardım Üye Listesi Ajanda Arama Bugünki Mesajlar Forumları Okundu Kabul Et
Alt 27.03.08, 22:46   #1
Onay ASP Süreçler (Prosedürler)


VBScript'te programın akış kontrolünde kullanacağınız bir diğer grup araç ise örneğin Javascript veya Perl'de fonksiyon dediğimiz gruplandırılmış ve isimlendirilmiş işlem kümeleridir. Bu kümeler programın bir yerinde topluca dururlar ve programın başka bir yerinden isimleriyle çağrılırlar; veya bu kümelere isimleriyle referans yapılır.

VBScript'te bu kümelenmiş kod gruplarına Prosedür (Süreç) denir. iki türlü olur: fonksiyon (Function) ve Subroutine (sab-rutin okunur; kısaca Sub diye yazılır ve sab diye okunur). Bu iki süreç arasındaki başlıca fark fonksiyondan kendisini çağıran komuta daima bir değer döner; Sub'dan dönmeyebilir. Sub yapacağı işi yapar ve programın kontrolünü kendine atıf yapılan noktaya devreder. VBScript'de bir programa farklı yerlerde sık sık aynı işi yaptırıyorsak bunu bir Sub ile yaptırırız; fakat programımıza bir değer gerekiyorsa bu değeri bir fonksiyona hesaplattırırız. Her ikisi de kendilerine atıfta bulunan veya kendilerini göreve çağıran satırdan (komuttan deyimden) verilebilecek değerleri kabul edebilirler.


<%
Sub prosedürün_ismi (arguman1 arguman2 .. argumanN)
' kodlar kodlar kodlar...
End Sub
%>


argümansız;

<%
Sub yildirim_gursesin_anisina()
Response.write "leylaklar dökülür güller ağlasın"
End Sub
%>


Fonksiyon adlarının sonuna bizden beklediği değer varsa onları belirleyen değişken adlarını parantez içinde yazarız. Fonksiyon bizden bir değer beklemiyorsa açılan kapanan (boş) parantezlere ihtiyaç yoktur. ancak bir çok VBScript programcısı bunu adet edinmiştir. Sub'ların çağrılması fonksiyondan farklıdır. Sub'ın icra edilmesini istediğiniz noktaya sadece adını yazarız. Sub'lar işleyebilmek için bizden değer bekliyorsa bu değerleri Sub adının yanına parantez içine almadan ve virgülle ayırarak yazarız. Örneğin Hesapla isimli ve bizden iki değer bekleyen bir Sub şöyle çağrılır:

Argümanlı sub işletimi

<%
' tercih 1
Call prosedur_ismi ( arguman1 arguman2 .. argumanN )
' tercih 2
prosedur_ismi arguman1 arguman2 .. argumanN
%>


Argümansız sub işletimi

<%
' başka işler...
Call yildirim_gursesin_anisina()
' veya
yildirim_gursesin_anisina
%>


Bu Sub işini bitirdiği anda programın akışı Sub'a atıf yaptığımız noktada devam eder.

EXIT SUB

Son olarak <% exit sub %> deyimini yad ederek bitirelim. Bu deyimi bir sub bloğu içinde kullanırsanız program akışı bu deyimi görür görmez o sub bloğundan çıkar ve bu sub hangi satırdan çağrılmışsa o satırdan sonraki kodları icra etmeye koyulur. Buna ihtiyacmız olur mu? Evet olur. Zaten bu deyim bir şartlı sınama bloğu içinde kullanılır genellikle. Belli bir koşul gerçekleştiğinde veya gerçekleşmediğinde sub içerisinde diğer deyimlerin işlenmeden çıkılmasını sağlar. Aşağıdaki banal örneğe bakalım:

<%
pay = 5
payda = 2
Call bol ( pay payda )
pay = 16
payda = 0
Call bol ( pay payda )

Sub bol ( x y )
If y=0 Then
Response.Write x & " \ " & y & ": müjde! divijın bay ziro.. bumm.."
exit Sub
End If
bolum = x \ y ' tam bölme
kalan = x mod y
Response.Write x & " \ " & y & " bölümü : "
Response.Write "bölüm: " & bolum & " : kalan: " & kalan & "<br>"
End Sub
%>



TARİH VE SAAT


Belki de Web'in zamana çok bağlı oluşu dolayısıyla Visual Basic'in hemen hemen bütün zaman-tarih fonksiyonları VBScript'te de kullanılır.

Date: Bugün tarihini verir. (25.03.2000 gibi)
Time: O andaki saati verir. (22:24:40 gibi)
Now: O andaki tarih ve saati birlikte verir. (25.03.2000 22:24:40 gibi)

VBScript'in buna ek olarak Weekday (haftanın günü) WeekdayName (günün adı) ve Monthname (ayın adı) fonksiyonları da vardır. Bu fonksiyonlar değerlerini Date fonksiyonuna göre alırlar. Örneğin

<%= WeekdayName(Weekday(Date))%>

komutu bize bugün Cumartesi ise "Cumartesi" değerini verir.

<%= MonthName(Month(Date))%>

komutu bize bu ay Mart ise "Mart" değerini verir. VBScript'in bunlara ek olarak Day (gün) Month (ay) ve Year (yıl) fonksiyonları da değerlerini Date fonksiyonundan alarak size bir rakam verirler. Eğer tarih 25 Mart 2000 ise:

<%= Day(Date)%>... 25
<%= Month(Date)%>... 3
<%= Year(Date)%>... 2000


değerini verir. VBScript bu değerleri doğruca işletim sisteminden alır. Dolayısıyla işletim sisteminin bölgesel ayarları Türkiye için yapılmışsa gün adları Türkçe olarak dönecektir. Ayrıca tarih ve saat biçimleri de bölgesel ayarlara bağlı olarak ay önde gün arkada veya tersi saat de 12 saat veya 24 saat esasına göre döner. ASP programlarınızı kişisel Web Server'da denerken kendi bilgisayarınızın tarih ve saatini; gerçek Internet'te çalıştırırken Server'ın tarih ve saatini alırsınız. Sayfalarınızda ay ve gün adlarını Türkçe görüntülemek için önce Server'ın bölgesel ayarlarını sınamanız ve eğer isimler Türkçe gelmiyorsa bunları çeviren Sub'lar veya fonksiyonlar yazmanız gerekebilir
ibiramcan isimli Üye şimdilik offline konumundadır  
Cevapla


Bu konuyu aşağıdaki sitelere kaydet

Etiketler
asp surecler prosedurler


Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir)

 
Seçenekler
Stil

Yetkileriniz
Yeni Konu açma yetkiniz yok
Mesaj yazma yetkiniz yok
Eklenti ekleme yetkiniz yok
Mesajlarınızı değiştirme yetkiniz yok

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-KodlarıKapalı
Trackbacks are Kapalı
Pingbacks are Kapalı
Refbacks are Açık


Forum Zaman Ayarları GMT +2 olarak ayarlanmıştır.
Şu Anki Saat: 01:23 .


Powered by vBulletin® Version 3.7.2
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.2.0
HarbiForum; Haybeden Değil , Harbiden
Her Hakkı Saklıdır ©2007-2008
Valid XHTML 1.0 Transitional Creative Commons License
İçeriğimizi başka bir sitede paylaşıyorsanız lütfen kaynak belirtmeyi unutmayın,ilginize teşekkür ederiz.
Sitemizde bulunan bir içeriğin telif haklarına veya yasalara aykırı olduğunu düşünüyorsanız lütfen bize bildirin.