ASP

Vikipedi, özgür ansiklopedi
Şuraya atla: kullan, ara
Active Server Pages
Orijinal yazar(lar) Microsoft
İlk yayınlanma Aralık 1996 (1996-12)
Kararlı sürüm 3.0 / 17 Şubat 2000 (16 yıl önce) (2000-02-17)
Programlama dili VBS, JS
İşletim sistemi Microsoft Windows
Lisans Ticari Sahipli yazılım

Active Server Pages ( Türkçe: Etkin Sunucu Sayfaları) kısaca ASP, Microsoft'un ilk dinamik web sayfaları üretmek için geliştirdiği sunucu taraflı betik motoru. Klasik ASP ya da ASP Klasik olarak da bilinir.

Bir ASP dosyasının içinde, özel nesneler ve VBS, JS, SQL kodları bulunur, bu sayfalar istemci tarafından istendiğinde sunucu öncelikle ASP içindeki kodları icra ederek, istemciye göndereceği bilgiyi oluşturur ve gönderir. Gönderilen bilgi genellikle HTML (ya da SGML) şeklindedir. Fakat sadece bunlarla sınırlı değildir, aynı şekilde bir grafik dosyası da oluşturulup, istemciye gönderilebilinir.

ASP sayfaları HTML kodlarının içine <% ve %> ASP taglarıyla gömülü şekilde oluşturulduğu halde bir kez sunucu tarafından yorumlandığında saf HTML olarak döner. Kaynak kodlara bakıldığında ASP kodları görülmez. Bu kodlamacıların kaynaklarını saklamalarını kolaylaştırır.

ASP'nin ortaya çıkış nedenlerinden birisi de CGI dillerinin Oturum (Session) ve Uygulamaların (Application) başından sonuna kadar izlenmesinin yetersiz oluşundandır.

ASP'de Kullanılan Nesneler[değiştir | kaynağı değiştir]

ASP altı adet tümleşik nesneyi barındırır.

Response[değiştir | kaynağı değiştir]

İstemciye HTTP içeriği ve çerez benzeri bilgileri gönderir.

<%
If Len(Request.QueryString("name")) > 0 Then
     Response.Cookies("name") = Request.QueryString("name") 
End If
 
Response.Write Server.HTMLEncode(Response.Cookies("name")) & " hoşgeldiniz!"
%>

Request[değiştir | kaynağı değiştir]

İstemci tarafından gönderilen bilgileri okur.

<%
' Get metodu ile gelen form bilgisini istemciye gönderir
Response.Write Server.HTMLEncode(Request.QueryString("name")) & " hoşgeldiniz!"
%>

Session[değiştir | kaynağı değiştir]

Oturum bazlı değişkenleri tutar.

<%
If Len(Request.QueryString("name")) > 0 Then
     Session("name") = Request.QueryString("name") 
End If

Response.Write "Welcome " & Server.HTMLEncode(Session("name")) & "!"
%>

Application[değiştir | kaynağı değiştir]

Tüm istemcilerin paylaşabildiği değişkenleri tutar.

<%
Application("uygulama_ismi") = "ASP Uygulamam"
Response.Write Server.HTMLEncode(Application("uygulama_ismi")) & " uygulamasına hoş geldiniz!"
%>

Server[değiştir | kaynağı değiştir]

Sunucu üzerinde kurulu veritabanı (ADO), dosya sistemi ve diğer kurulu kütüphanelere erişim sağlar.

<%
Dim oAdoCon, oAdoRec, oAdoStm, oCdoCon, oCdoMsg, oSciDic, oSciFsm, oMswAdr
 
Set oAdoCon = Server.CreateObject("ADODB.Connection")
Set oAdoRec = Server.CreateObject("ADODB.Recordset")
Set oAdoStm = Server.CreateObject("ADODB.Stream")
Set oCdoCon = Server.CreateObject("CDO.Configuration")
Set oCdoMsg = Server.CreateObject("CDO.Message")
Set oSciDic = Server.CreateObject("Scripting.Dictionary")
Set oSciFsm = Server.CreateObject("Scripting.FileSystemObject")
Set oMswAdr = Server.CreateObject("MSWC.AdRotator")
%>

Err[değiştir | kaynağı değiştir]

Hata yakalama metotlarını içerir.

<%
On Error Resume Next
 
Response.Write 1 / 0
 
Response.Write "Hata Kodu: " & Server.HTMLEncode(Err.Number) & "<br />"
Response.Write "Hata Kaynağı: " & Server.HTMLEncode(Err.Source) & "<br />"
Response.Write "Hata Açıklaması: " & Server.HTMLEncode(Err.Description) 
 
If Err.Number <> 0 Then 
     Err.Clear 
End If 
%>