• 01-04-2008, 17:07:34
    #46
    Eposta Aktivasyonu Gerekmekte
    2. Versiyonda tanımlanmıştır.
    Array(Liste)
    Array fonksiyonu tek boyutlu statik dizi(array) yaratmaya yarar. Array Fonksiyonunu kullanarak dinamik dizi tanımlayamazsınız.
    Unutmayın ki; dizinin ilk elemanı her zaman sıfır(”0″) olarak tanımlanmalıdır. Örneğin ; deneme(0)
    List terimi dizinin elemanı olacak değerleri listelemeye yarar.

    Örnek Kod:
    <% deneme = array(”A”, “B”, “C”, “D”) %>
    <% =deneme(0) %>
    <% =deneme(1) %>
    <% =deneme(2) %>
    <% =deneme(3) %>
    Çıktı:
    A
    B
    C
    D
    Örnek Kod:
    <% deneme = array(111, 222, 333, 444, 555) %>
    <% =deneme(0) %>
    <% =deneme(1) %>
    <% =deneme(2) %>
    <% =deneme(3) %>
    <% =deneme(4) %>
    Çıktı:
    111
    222
    333
    444
    555
    Dinamik yapıda bir dizi Dim ve ReDim fonksiyonlarının kullanımı ile olabilir. Öncelikle dinamik diziyi tanımlamak için Dim fonksiyonunu boş parantezler kullanarak çağırmanız gerekir. Ardından programın herhangi bir noktasında ReDim fonksiyonunu çağırarak eleman sayısını tanımlarsınız. Ayrıca istediğiniz zaman dinamik dizinizi tekrardan tanımlayabilirsiniz.
    Örnek Kod:
    <%
    Dim dinamikdizi()

    ReDim dinamikdizi(22)

    ReDim dinamikdizi(500)
    %>
    Diziler 60 boyuta kadar desteklenmektedir. Eğer çok boyutlu bir dizi tanımlamak istiyorsanız, yine Dim tanımını kullanmalısınız.
    Örneğin aşağıda bulunan dizi 3 boyutludur. ılk elemanın 23, ikincinin 15 ve üçüncünün 201 elemanı bulunmaktadır. Sonuç olarak, bu dizide toplamda 23×15x201 = 69345 eleman bulunmantadır
    Yarattacağınız boyut sayısı mevcut olan bellek ile sınırlıdır.Eğer varolan bellek değerini aşarsanız bir hata mesajı alırsınız.
    Örnek Kod:
    <% Dim UcBoyutluDizi(22, 14, 200) %>
  • 01-04-2008, 17:08:05
    #47
    Eposta Aktivasyonu Gerekmekte
    1. Versiyonda tanımlanmıştır.
    Abs(Sayı)
    Abs fonksiyonu verilen sayının mutlak değerini bulmamıza yarar.
    Negatif sayılar pozitif olur, pozitif sayılar ise değişmeden pozitif olarak kalır.
    Örnek Kod:
    <% =Abs(-127.89) %>

    Çıktı:
    127.89
    Örnek Kod:
    <% =Abs(127.89) %>
    Çıktı:
    127.89
  • 01-04-2008, 17:08:40
    #48
    Eposta Aktivasyonu Gerekmekte
    Tanımlayamıyoruz ama bu değişkenler bizim için yine de önemli. Bu yüzden hangi tipler olduğuna şöyle bir bakarsak;· Integer
    · Byte
    · Long
    · Single
    · Double
    · Currency
    · String
    · Date
    · Boolean
    · Empty
    · Null
    · Object
    · Error
    · Array
    Integer : -32.768 ile 32.767 arasında bulunan tüm sayı değişkenleridir. Çoğunlukla kullanılan sayılar bu aralıkta olduğundan integer değişkeni kullanılır.

    Byte : 0 ile 255 arasındaki sayılar için kullanılır. Çoğunluk aritmetik işlemlerde faydalıdır.
    Long : -2.147.483.648 ile 2.147.483.647 arasındaki sayılar için kullanılır. Integerdan farkı bellekte daha geniş bir alan açmasıdır.
    Single : Negatif sayılarda -3.402823E38 ile –1.401298E-45 , pozitif sayılarda 1.401298E-45 ile 3.402823E38 arasındaki sayı değerleri için kullanılır.
    Double : Negatif sayılarda -1.79769313486232E ile -4.94065645841247E-324 , pozitif sayılarda 4.94065645841247E-324 ile 1.79769313486232E308 arasındaki sayı değerleri için kullanılır.
    Currency : Parasal ifadeler için kullanılır. Ondalık kısmı ise 4 haneye kadar kabul eder. –922,337,203,685,477,5808 ile 922,337,203,685,477,5807 arasında değerler alabilir.
    String : Herhangi bir karakter ifadesini veya metni tutmamıza yarar. Ayrıca rakamlar eğer “ içine alınırsa string olarak algılanır bu yüzden üzerinde matematiksel işlem yapılamaz.
    Date : Tarihleri bellekte değişken olarak tanımlamamıza yarar. Böylece tarihler arası işlemleri rahatlıkla yapabiliriz. Sunucu üzerindeki bölgesel ayarlara bağlı olarak çıktısı / ile veya . ile ayrılmış halde görünebilir. Ayrıca ay/gün/yıl şeklinde olan standart tarih formatı türkçede gün/ay/yıl şeklindedir. Bazı tarihsel işlemler yaptırılırken bu göz önüne alınmalıdır.
    Boolean : True/False yani doğru ve yanlış ifadeleri için kullanılır.
    Empty : Değeri boş olarak tanımlamamıza yarar.
    Null : ıçi tamamen boş anlamına gelir. Asla ve asla unutulmamalıdır ki boş demek değeri sıfır demek veya boolean olarak false demek değildir. ıçi boştur, bir değer atanmamıştır.
    Object : Birçok satırdan oluşmuş kodlara denir. Bunlarla veritabanına erişebilir, işlem yapabilirsiniz. Bu çok uzun bir konu olduğu için objeler konusunda ele alacağım.
    Error : Çok sıkça kullanılan bir değişkendir. Fonksiyonlar tarafından kullanımı oldukça sıktır ama normal program yazarken asla kullanılmamalıdır, çünkü hiçbir değişkene dönüşüm yapılamaz. Biraz karışık oldu anlıyorum ama bunu diğer değişkenlerin birbirine dönüşümünü anlattığımda daha iyi kavrayacaksınız.
    Array : Diziler. Başlı başına bir kitap yazılabilir. Kısaca bahsedelim çünkü zaten VbScript kısmında da uzunca anlattım; bir değişkenin içeriği birden fazla aynı yapıda veriden oluşabilir. Bu durumda onları tek bir değişken kullanarak tanımlayabilirsiniz. Örneğin yetki adında bir değişkenimiz olsun ve bu birçok değer içerebilir olsun. Mesela 4 yetki var ve eğer o kişinin yetkisi var ise 1 yoksa 0 değerini alıyor. Bu durumda yetki(1), yetki(2), yetki(3), yetki(4) şeklinde yetki adında bir dizi tanımlayabilir ve bunlara gerekli 1 ve 0 değerlerini atayabiliriz.
    Option Expilicit
    şimdi size birşey söyliyeceğim oldukça şaşıracaksınız: “ASP’de değişken tanımlamanıza gerek yoktur. VbScript otomatik olarak eğer tanımlamadıysanız bile sizin yerinize tanımlama yapar”. şimdi eğer buraya kadar tüm konuyu okuduysanız herşey boşa mı gitti diyorsunuz? Asla bu çok önemli. Eğer iyi bir programcı iseniz değişkeni mutlaka tanımlamanız gerekir. Bir programcı için performans çok önemlidir, hem de sorunu çözmek kadar. Bu yüzden eğer değişkeni tanımlamazsanız Sunucu bu işlemi sizin yerinize yapmaya kalkacak bir de bu işlem için zaman harcayacaktır. Özellikle internet programcılığında amaç olabildiğince hızlı çıktı veren programlar yazmaktır. Amerika’da adresi yazdıktan sonra 5 saniye içinde gelmeyen sayfanın kapatıldığı gibi yakın bir zamanda Türkiye’de de aynı şey meydana gelecektir. Bu yüzden şimdiden bunun önlemini almakta fayda görüyorum.
  • 01-04-2008, 17:09:22
    #49
    Eposta Aktivasyonu Gerekmekte
    Programlama dillerinin hepsinde ilk işlenen konulardandır değişkenler. Çünkü bir programlama dilinin temel yapısı belirler değişkenler fakat söz konusu ASP olunca durum biraz farklılaşıyor. Aslında bu kullanılan script diline de bağlı ama buna birazdan değineceğim.Değişkenler sizin bir programı yazmadan önce o programda kullanacağınız veriler için bellekten yer açmanızı sağlayan sanal veri yapılarıdır. Bir programda kullanıcıdan aldığınız bir bilgiyi eğer bir yere kaydetmek veya hafızada tutup daha sonra kullanmak istiyorsanız onu bir şekilde bilgisayarın belleğinde tutmalısınızdır. Mantık olarak düşündüğümüzde bu veriyi bir daha çağırabilmemiz için ona bir isim vermemiz gerekir. Demekki yaratacağımız sanal veri yapısına bir isim vermeliyiz. Ee peki bu verinin içeriği ne olacak, yani ben kullanıcıdan telefon numarası istersem ve kullanıcı oraya adını yazarsa bunun karakter olmaması sayı olması gerektiğini o kullanıcıya nasıl anlatacağım. Demekki bir de verinin bir tipi olmalı. Sonuç olarak bu paragraftan çıkarabileceğimiz sonuç bir değişkeni atamak için ona bir isim vermeli ve tipini belirlemeliyiz.

    Daha önceden belki programcılıkla uğraşmışsınızdır, özellikle Pascal iyi bir temeldir bu konuda. Orada da veri tanımlaması mantığı neredeyse ASP’de kullanacağımızla aynıdır. Bir şey dışında, gelin bunu örnekle görelim;
    Dim isim
    Dim telefon
    Dim tarih
    Vbscript’te verileri tanımlamak için yukarıdaki gibi bir tanımlama yaparız. Dim bizim için bellekte verdiğimiz isimle bir yer açar. ılk açıldığında içi boştur, biz bu değeri program içerisinde bir değere eşitleyerek saklanan değeri değiştirebiliriz. Mesela bunun için de bir örnek verelim;
    isim=”Ali”
    telefon= 1234567
    tarih=#01.01.2001#
    Bu ifadeleri yazdıktan sonra program bellekteki değerleri değiştirecektir. şimdi geri dönüyorum Pascal konusuna. Dikkat ettiniz mi bilmiyorum ama burada hiç verinin tipinden bahsetmedik, yani ben tarih diye bir değişken tanımladım ama onun içeriğinin tarih olacağını hiçbir yerde söylemedim. ışte Vbscriptin zekice yaptığı işlem: variant yaratmak. Variant dediğimiz içeriğini gelen veriye göre kendi kendine belirleyen değişken demek. Bu paragraf sonunda da şunu öğrendik ASP’de Dim ile tanımlama yapılır ama tip otomatik olarak belirlenir.
    şimdi gelelim bu işin arka planına. Bir değişkeni variant olarak tanımlamak bence çok saçma, çünkü bellekte 256 Bytelık yer açıyorsunuz. Bu ifade kısacık bir True/False yanı tek karakterlik bir doğru yanlış ifadesi olabilir veya uzun bir stirng ifade olabilir ama bu ikisi içinde bellekte aynı boyutta yer açılır. şimdi bu size çok da önemli değil gibi görünebilir. Ama yaşamış olduğum tecrübelere dayanarak, bu tanımlama yüzünden sadece 1000 kişinin online olduğu bir e-ticaret sitesinin Internet Information Server’ının 4 GB’lık belleğinin %28 dolu olduğunu gördüm. Belki bu da size küçük ve önemsiz görünüyor ama küçücük 256 Byteların toplanıp da nasıl gigabytelık yer kapladığını görmek hiçte hoş değil. 1000 kişi siteye girdiğinde sitedeki yavaşlık iyi bir intiba bırakmayacak, hatta benim aldığım mailler gibi “bu site niye bu kadar yavaş?” gibi mailler almanıza yol açabilecektir. Peki çözümü ne?
    Çözüm maalesef ASP ile Vbscirpt kullanımıyla çözülemiyor. Çözüm ASP.NET yani ASP’nin yeni versiyonu ile mümkün orada istediğiniz değişkeni istediğiniz tipte tanımlayabiliyorsunuz. C# dili sayesinde artık birçok eksiklik ASP.NET’te gideriliyor. Bu konuda da yazdığım makaleler ASP.NET bölümünde.
  • 01-04-2008, 17:09:55
    #50
    Eposta Aktivasyonu Gerekmekte
    <%@language=Vbscript%><html><body><% response.write("Merhaba Dünya") %></body></html>ışte ilk asp dosyası. şimdi bunu deneme.asp olarak kaydedin. Bu dosyayı c:\inetpub\wwwroot dizini altına kopyalayın. Boş bir Internet Explorer açıp location kısmına :

    http://localhost/deneme.asp yazın. Ekrana Merhaba Dünya yazısı çıkmalı. Eğer çıkmıyorsa, sorunu şimdiden çözelim ki ileride diğer kodları çalıştırabilin. Bu konu oldukça önemli bir konu olduğu için onu ayrı bir başlık olarak ele almak istedim. Eğe sorun yaşıyorsanız “Yazdığım Kodları çalıştırırken hata alıyorum” makalesini okuyun.
  • 01-04-2008, 17:12:40
    #51
    Eposta Aktivasyonu Gerekmekte
    ASP Dersleri adlı açtığım konunun kaynağı : WbTürk Php & Resources

    WbTürk Php & Resources adlı sitedeki Asp kategorisi : Asp