Temel ASP Konseptleri: Fonksiyonlar ve Prosedürler

Fonksiyonlar ve prosedürler, ASP sayfalarında kullanılan önemli yapısal elemanlardır ve kodların tekrar kullanımını ve sürdürülebilirliğini sağlar. Hem fonksiyonlar hem de prosedürler, belirli bir işlevi yerine getiren kod bloklarından oluşur, ancak kullanım amaçları farklıdır.

Fonksiyonlar, bir değer döndüren kod bloklarıdır. Fonksiyonlar, genellikle bir veya daha fazla parametre alırlar, bu parametreler işlevi yerine getirmek için kullanılır ve işlev tamamlandığında sonuç olarak bir değer döndürürler. Fonksiyonlar, ASP sayfalarında sıkça kullanılan hesaplama veya işlemlerde kullanılır. Fonksiyonlar, “Function” anahtar kelimesi ile tanımlanır ve “Return” anahtar kelimesi kullanılarak sonuç değeri döndürülür. Örneğin:

<%
Function Topla(sayi1, sayi2)
    Dim sonuc
    sonuc = sayi1 + sayi2
    Return sonuc
End Function
%>

Bu kod bloğu, iki sayıyı toplar ve sonucunu döndürür. Fonksiyon, sayı1 ve sayı2 parametrelerini alır ve sonucu geri döndürür. Bu fonksiyonu çağırmak için, aşağıdaki gibi kullanabilirsiniz:

<%
Dim toplam
toplam = Topla(3, 4)
Response.Write(toplam)
%>

Bu kod bloğu, Topla fonksiyonunu çağırır, 3 ve 4 değerlerini parametre olarak verir ve toplam sonucunu ekrana yazdırır.

Prosedürler, bir değer döndürmeyen kod bloklarıdır. Prosedürler, genellikle belirli bir işlevi yerine getiren kod bloklarında kullanılır. Prosedürler, “Sub” anahtar kelimesi ile tanımlanır ve bir değer döndürmez. Örneğin:

<%
Sub Yazdir(metin)
    Response.Write(metin)
End Sub
%>

Bu kod bloğu, “metin” parametresi olarak verilen metni ekrana yazdırır. Bu prosedürü çağırmak için, aşağıdaki gibi kullanabilirsiniz:

<%
Yazdir("Merhaba dünya!")
%>

Bu kod bloğu, “Merhaba dünya!” metnini ekrana yazdırmak için Yazdir prosedürünü çağırır.

Fonksiyonlar ve prosedürler, kodların tekrar kullanılabilirliğini ve sürdürülebilirliğini artırır. Bir fonksiyon veya prosedür, bir kez yazılıp daha sonra farklı yerlerde kullanılabilir. Ayrıca, kodun belirli bir işlevi yerine getirmesi gerektiğinde

, fonksiyon veya prosedür çağrısı yaparak kodun daha modüler hale getirilmesi mümkündür. Bu, kodun daha kolay okunabilir, anlaşılır ve bakımı daha kolay hale gelir.

ASP sayfalarında fonksiyonlar ve prosedürler, HTML kodu içinde kullanılabilir. Bu nedenle, bir ASP sayfasında HTML kodu ve ASP kodu bir arada kullanılabilir. ASP sayfalarında HTML kodu, “<%” ve “%>” etiketleri arasında ASP kodu kullanılarak işlenebilir. Aynı şekilde, ASP kodu da “<%” ve “%>” etiketleri arasında HTML kodu kullanılarak işlenebilir. Bu, web sayfalarının daha dinamik ve etkileşimli hale getirilmesine olanak tanır.

Fonksiyonlar ve prosedürler, ASP sayfalarında geniş bir kullanım alanı bulurlar. Örneğin, veritabanı işlemlerinde, form verilerini işlemede, sayfa yönlendirmelerinde, hata yönetiminde ve diğer birçok alanda kullanılabilirler. ASP sayfalarının temel yapısını öğrendikten sonra, fonksiyonlar ve prosedürlerin kullanımı sayfaların daha işlevsel hale getirilmesinde önemli bir role sahip olabilir.

örneklerle konuyu daha iyi pekiştirebiliriz. İşte birkaç örnek:

  1. Fonksiyon kullanarak toplama işlemi yapmak:
<%
Function Topla(sayi1, sayi2)
    Topla = sayi1 + sayi2
End Function

Response.Write("Toplam: " & Topla(3, 5))
%>

Bu örnekte, “Topla” adında bir fonksiyon tanımlanmıştır. Fonksiyon, “sayi1” ve “sayi2” adında iki parametre alır ve bu parametreleri toplayarak sonucu “Topla” değişkenine atar. Daha sonra, “Response.Write” fonksiyonu kullanarak toplam sonucu ekrana yazdırıyoruz.

  1. Prosedür kullanarak sayfa yönlendirmesi yapmak:
<%
Sub Yonlendir(url)
    Response.Redirect(url)
End Sub

Yonlendir("https://www.google.com")
%>

Bu örnekte, “Yonlendir” adında bir prosedür tanımlanmıştır. Prosedür, “url” adında bir parametre alır ve bu parametreyi kullanarak “Response.Redirect” fonksiyonunu çağırarak sayfa yönlendirmesi yapar. Daha sonra, “Yonlendir” prosedürünü çağırarak, belirtilen URL’ye yönlendirme yapılır.

  1. Fonksiyon kullanarak veritabanı işlemi yapmak:
<%
Function GetirAdSoyad(id)
    Dim baglanti, sorgu, rs
    Set baglanti = Server.CreateObject("ADODB.Connection")
    baglanti.Open "DSN=VeritabaniAdi"
    sorgu = "SELECT Ad, Soyad FROM Kullanicilar WHERE ID=" & id
    Set rs = baglanti.Execute(sorgu)
    If Not rs.EOF Then
        GetirAdSoyad = rs("Ad") & " " & rs("Soyad")
    Else
        GetirAdSoyad = "Bulunamadı"
    End If
    rs.Close
    Set rs = Nothing
    baglanti.Close
    Set baglanti = Nothing
End Function

Response.Write("Ad ve Soyad: " & GetirAdSoyad(123))
%>

Bu örnekte, “GetirAdSoyad” adında bir fonksiyon tanımlanmıştır. Fonksiyon, “id” adında bir parametre alır ve bu parametreyi kullanarak veritabanından ilgili kullanıcının ad ve soyad bilgilerini çeker. Veritabanı bağlantısı “ADODB.Connection” nesnesi kullanılarak açılır ve “Execute” metodu kullanılarak sorgu çalıştırılır. Daha sonra, “If” koşulu ile sorgu sonucunda bir kayıt gelip gelmediği kontrol edilir. Kayıt varsa, “Ad” ve “Soyad” alanlarından bilgiler alınarak “GetirAdSoyad” değişkenine atılır. Kayıt yoksa

, “Bulunamadı” metni atanır. Son olarak, veritabanı bağlantısı kapatılır ve “GetirAdSoyad” fonksiyonu çağrılarak ekrana ad ve soyad bilgileri yazdırılır.

  1. Prosedür kullanarak form verilerini işlemek:
<%
Sub Kaydet()
    Dim ad, soyad, cinsiyet, ilgi
    ad = Request.Form("ad")
    soyad = Request.Form("soyad")
    cinsiyet = Request.Form("cinsiyet")
    ilgi = Request.Form("ilgi")
    ' Veritabanına kaydetme işlemi yapılabilir '
    Response.Write("Kaydedildi!")
End Sub

If Request.Form("submit") = "Kaydet" Then
    Kaydet()
End If
%>

<form method="post" action="">
    Ad: <input type="text" name="ad"><br>
    Soyad: <input type="text" name="soyad"><br>
    Cinsiyet: <input type="radio" name="cinsiyet" value="Erkek"> Erkek
             <input type="radio" name="cinsiyet" value="Kadın"> Kadın<br>
    İlgi Alanları: <select name="ilgi" multiple>
                        <option value="Spor">Spor</option>
                        <option value="Müzik">Müzik</option>
                        <option value="Sinema">Sinema</option>
                   </select><br>
    <input type="submit" name="submit" value="Kaydet">
</form>

Bu örnekte, “Kaydet” adında bir prosedür tanımlanmıştır. Prosedür, formdan gelen verileri “Request.Form” nesnesi ile alarak ilgili değişkenlere atar. Daha sonra, bu değişkenler kullanılarak veritabanına kaydetme işlemi yapılabilir. Son olarak, “Response.Write” fonksiyonu ile “Kaydedildi!” mesajı ekrana yazdırılır.

Formda “submit” adında bir input nesnesi kullanarak “Kaydet” butonu oluşturulur. Form gönderildiğinde, “Request.Form” nesnesi kullanılarak “submit” değişkeninin değeri kontrol edilir. Eğer değeri “Kaydet” ise, “Kaydet” prosedürü çağrılarak form verileri işlenir.

Please follow and like us:

Bir yanıt yazın