ACTIVE SERVER PAGES

 

ASP Nedir?

      HTML formlarından bilgi biriktirir.

      Kişiye özel sayfa sunumunu sağlar.

 

ASP ile ilgili Önemli Olaylar

      Ocak1997 de tanıtıldı.

      NT, Windows 95/98, IIS için ücretsiz

      Windows 95/98 ‘ de kişisel web server içinde offline çalişabilir.

      Kodları HTML ile birlikte içiçe yazılabilinir.

      Browser bağımsızdır.

      Browser dan veritabanı işlemlerini yapabilinir.

 

First ASP

Bu örnekte yazi boyutu surekli büyüyerek degiserek 5 kere “Merhaba ” yazısı ekranda gösterilir.

(Kodlar “ <% … %>” işaretleri içine “… “ olan yere yazılır.)

<html> <body>

<% for i=3 to 7 %>

<font size =  <% = i %> >

Merhaba <br>

<% Next %>

</body> </html>

 

ASP Nesneleri

 

     Response Nesnesi

     Server Nesnesi

     Request Nesnesi

     Session Nesnesi

     Application Nesnesi

 

 

Response Nesnesi

 

      response.write or <% = %>

   Browser a bilgi gönderir.

      response.redirect

   Eğer browserda yazı vs. yoksa başka bir sayfaya transer kontroludur.

      response.end

   Script in bütün fonksiyonlarını durdurur.

 

Example: Get System Time

 

<% LANGUAGE=“VBSCRIPT” %>

<html> <body>

<% If Minute(Now) < 30 Then %>

Before Half

<% Else %>

After Half

<% End If %>

of

<% response.write (Hour(Now)) %>

</body> </html>

 

Screen:

 

After half of 9

 

Source:

 

<html> <body>

After Half

of

9

</body> </html>

 

Form Örneği 

 

Create the form:

 

 

<html> <body> <h2> Sample Order </h2>

<form method=“post” action=“response.asp”>

<p> AD : <input name = “fname” size=“48”>

<p> SOYAD : <input name = “lname” size=“48”>

<p> Title: <input name=“title” type=radio value=“mr”> Mr.

<input name=“title” type=radio value=“ms”> Ms.

<p> <input type=submit> <input type=reset>

</form> </body> </html>

 

ASP Response Page

 

Response.asp Oluşturma:

 

<% title = request.form(“baslik”)

lastname = request.form(“sadi”)

If title= “bay” Then

%> Bay <% = soyadi%>

<% ElseIf title = “Byn” Then %>

Bayan <% = soyadi %>

<% Else %>

<% = request.form (“ad”) & “ “ & soyadi %>

<% End If %>

 

Access için Data Source Name (DSN)Oluşturma 

 

      Web server da,Control Panel açılır.

     ODBC iconuna double klik yapılır ve System DSN kliklenir.

      Add I  kliklenir,the Microsoft Access Driver seçilip , Finish kliklenir..

      Data Source Name box içinde , type olarak   name I ,  Select I secin.Daha sonra veritabanınızı secip OK I klikleyin.

      OK ‘I klikleyerek  dialog box ları kapatın.

 

ASP için Access Dosyası Kullanımı

 

ASP - REQUEST Nesnesi

 

          Collections

 

                   Form (POST)

                   Server Variables

                   QueryString (GET)

                   Cookies

                   ClientCertificate

 

          Method

 

                   BinaryRead

 

          Properties

 

                   TotalBytes

 

REQUEST OBJECT-TotalBytes

 

TotalBytes property’si sadece okunabilir bir property dir.Webserver’a gönderilen toplam BYTE sayısını belirtir.

 

    Var = Request.TotalBytes

 

REQUEST OBJECT-Client Certificate

 

Provides access to the certification fields of the client’s digital certificate.

Client Certificate eğer istemcinin bilgisayarı the Secure Sockets Layer’I desteklerse ve browser SSL’i (https://) çalıştırarak webservera baglı ise  gönderilir.

 

Request.ClientCertificate

 

 

Subject: digital certificate sahibi hakkında bilgiyi sağlayan virgüllerle ayrılmış listedir.

 

Issuer: Issuer hakkındaki bilgidir.

 

ValidFrom and ValidUntil: Validasyon tarihleri

 

SerialNumber:  ASCII gösterim.

    Ex: 0A-B7-34-23

 

Certificate:

 

Flags: Ek bilgileri sağlar.

 

Request.ClientCertificate (“IssuerC”) : Merkez ülkeyi gunceller.

 

Request.ClientCertificate (“SubjectO”)

 

 

REQUEST OBJECT- Cookies

 

Cookie: İstemcinin makinasindaki bazı bilgilerin web serverda saklanmasına yarar.

 

 

    Request.Cookies

 

Bu bilgiler Server a her istemci sayfayı yeniden çağırdığında yeniden gönderilir.

 

    Set-Cookie: NAME=VALUE; expires=DATE;

 

    domain=DOMAIN_NAME;

 

    path=PATH;

 

    secure

 

    Set-Cookie: NAME=VALUE;     Mandatory, information to be saved

    expires=DATE;                       Greenwich Mean Time

    domain=DOMAIN_NAME;       microsoft.com (www. or home.)

 

 

 

REQUEST Nesnesi - Form (POST)

Kullanıcı formdaki alanlara bilgilerini doldurduktan sonra , form submit edildiğinde formdaki her bir alandaki veriler Server'a yada vt'ye gönderilir.

name = value

          name (attribute of <INPUT>)

         

 

HTTP Request (Form Submission)

 

 

<html><body>

<form action = “x.asp” method = “post” >

First Name: <input type = “text” name = “first_name” size = 60 > <br>

Last Name: <input type = “text” name = “last_name” size = 60 > <br>

 <input type = “submit” value = “Submit”>

</form>

</body> </html>

         

 

HTTP Request Header

 

POST /x.asp HTTP/1.0

Accept: image/gif, image/jpeg, */*

User-Agent: Mozilla/2.0 N

    (Windows; I; 32 Bit)

Content-Type: application/x-www-form-urlencoded

Content-Length: 35

(mandatory blank line)

first_name=Ajda&last_name=Pekkan

 

Formdan bilgi Okuma Islemi

 

<% strFirstName = Request.Form(“first_name”) %>

<% strLastName = Request.Form(“last_name”) %>

 

NAVIGATOR ORNEGI - DSN

 

<% name = request.servervariables ("http_user_agent")

place=InStr(name,"MSIE")

if place>0 then

          flag = 1

else

          flag = 2

end if

Set conn = Server.CreateObject ("ADODB.Connection")

conn.Open "asp"

Set rs = Server.CreateObject ("ADODB.Recordset")

sql = "SELECT * FROM [navigator]"

set rs= conn.execute(sql)

rs.movefirst

%>

<br>Internet Explorer

<% response.write rs.fields("IE")

%>

<br> Netscape

<% response.write rs.fields("NN")

if flag = 1 then

          num = rs.fields("IE")

          rs.close

          rs.open sql,conn,3,3

          rs.Fields("IE") = num+1

else

          num = rs.fields("NN")

          rs.close

          rs.open sql,conn,3,3

          rs.Fields("NN") = num+1

end if

rs.Update

rs.Close

conn.close

%>

 

DSN SIZ BAGLANTI

 

<%
dbdsn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.Mappath("dbtelno.mdb") & ";"
Set db = Server.CreateObject("ADODB.Connection")
db.Open dbdsn
Set rs = Server.CreateObject("ADODB.Recordset")
sqlDeyim = "SELECT * FROM [tblTelno] ORDER BY [Soyadi]"
rs.Open sqlDeyim, db, 3, 2
%>

 

Veri Tabanı Listeleme (Tablo içinde)

 

<HTML><HEAD><TITLE>Telefon Listesi</TITLE></HEAD>

<BODY>

<br>

<%

'Create an ODBC Connection & Open it

Set conn = Server.CreateObject ("ADODB.Connection")

conn.Open "asp"

sql = "SELECT * FROM [Telephone]"

Set rs= conn.Execute(sql)

%>

 

<TABLE BORDER=1 BGCOLOR=#ffffff CELLSPACING=0>

<FONT FACE="Arial" COLOR=#000000>

<CAPTION><B>Telefon Listesi</B></CAPTION>

<TR>

<TH BGCOLOR=#c0c0c0 BORDERCOLOR=#000000 >

<FONT SIZE=2 FACE="Arial" COLOR=#000000>Müşteri No</FONT></TH>

<TH BGCOLOR=#c0c0c0 BORDERCOLOR=#000000 >

<FONT SIZE=2 FACE="Arial" COLOR=#000000>Isim</FONT></TH>

</TR>

<%

On Error Resume Next

rs.MoveFirst

do while Not rs.eof

 %>

<TR VALIGN=TOP>

<TD BORDERCOLOR=#c0c0c0  ALIGN=RIGHT>

<FONT SIZE=2 FACE="Arial" COLOR=#000000>

<%=Server.HTMLEncode(rs.Fields("CustomerNo").Value)%><BR></FONT></TD>

<TD BORDERCOLOR=#c0c0c0 >

<FONT SIZE=2 FACE="Arial" COLOR=#000000>

<%=Server.HTMLEncode(rs.Fields("Name").Value)%><BR></FONT></TD>

</TR>

<%

rs.MoveNext

loop%>

</TABLE>

 

</BODY></HTML>