Top Banner
ASP- 2 16.03.2022 1
27

sunu (Asp-2)

Jul 31, 2015

Download

Technology

Merve Aydın
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: sunu (Asp-2)

15.04.2023 1

ASP-2

Page 2: sunu (Asp-2)

15.04.2023 2

Metin (TextStream) Nesnesi

Dosya sistemi nesnesi bize disk sistemine, klasörlere ve dosyalara erişme imkânı verir ama yeni dosyaları oluşturmak veya mevcutlara ek yapmak için yeterli özellik ve metottan yoksundur. Bunu TextSream nesnesi sağlar.

Metin Dosyası Oluşturma (CreateTextFile)Bu metot TextStream nesnesinindir; ve otomatik olarak bu nesnenin diğer metotlarını kullanmamızı sağlar. Kullandığımız metotlar ise WriteLine (satır yaz: bir String’i sonuna yeni satır karakteri koyarak dosyaya yazar) ve Close (kapat: açılan metin dosyasını kapatır).

Page 3: sunu (Asp-2)

15.04.2023 3

Sunucu (Server) Nesneleri

Buraya kadar ele aldığımız nesneler bir anlamda bizim sadece tek tek sayfalarda yararlanacağımız araçları sağlıyor. Oysa ASP’yi diğer CGI teknolojilerinden ayıran başlıca özelliklerden biri tek tek Web sayfalarını sanki bir bilgisayar programının çeşitli pencereleri, diyalog kutuları, mesaj kutuları, girdi kutuları gibi, birarada bir “uygulama programı” olarak bağlayabilmesidir

Page 4: sunu (Asp-2)

15.04.2023 4

ScriptTimeout Özelliği:

Server Nesnesi

Web Server, ASP için bir nesnedir, ASP’nin bir çok işini bu nesnenin özellikleri ve metotları halleder

<% Server.ScriptTimeout = 100 %>

Script bir türlü yapacağı işi yapıp, sonlandırmıyor. Bu durumlarda ziyaretçinin ve tabi Server’ın sonsuza kadar beklemesi mümkün değil! Programın bir şekilde durdurulması gerekir. Bunu hemen hemen bütün Web server programlarının Script Timeout (Script süre sınırı) diyalog kutusuna bir değer girilerek

Page 5: sunu (Asp-2)

15.04.2023 5

Talep (Request) Nesnesi

Web Server çok akıllı bir programdır; bir Web ziyaretçisi herhangi bir talepte bulunduğu, yani bir sayfanın gönderilmesini istediği anda, bu talebi, bir nesne halinde ele alır; koleksiyonlar oluşturur.

QueryString ve Form

Web ziyaretçisinin bilgisayarından kalkıp Server’a gelen herşey, QueryString kolleksiyonunu oluşturur. Bu ziyaretçinin Browser’ın URL adresi hanesine yazdığı bir basit HTML sayfası yolu ve adı olabilir; bir Form’un Gönder düğmesini tıkladığında gelen bilgiler olabilir.

Page 6: sunu (Asp-2)

15.04.2023 6

ServerVariables (Server Değişkenleri)

Request nesnesinin bir diğer koleksiyonu, bizim kendi Web Server’ımızın o anda çalışmakta olan ASP sayfası için oluşturduğu ortamın değişkenleridir. Bunların arasında ziyaretçinin Browser’ına ilişkin bilgiler de vardır.

Page 7: sunu (Asp-2)

15.04.2023 7

Cookie (Çerez)

Ne istemci sunucunun, ne de sunucu istemcinin o anda hatta (on-line) olduğunu bilmek zorunda değildir; birbirlerinden istedikleri ve gönderdikleri şeyleri karşı tarafından almaya hazır olduğunu bilmeden gönderirler. Oysa sözgelimi elektronik alışveriş gibi ziyaretçinin bir yerlere bir şeyler kaydettiği, geçici değişkenler oluşturduğu durumlarda sitemizde kimin ne yaptığını bilmek zorundayız.

Page 8: sunu (Asp-2)

15.04.2023 8

Sertifika Nesnesi

ASP açısından sertifika ile ilgili her türlü bilgi ClientCertificate koleksiyonunda durur. Sözgelimi, bir ziyaretçinin gerçekten sitenize girmeye yetkili olup olmadığını anlamak için

<%SertifikaNo = Request.ClientCertificate(SerialNumber) %>

Page 9: sunu (Asp-2)

15.04.2023 9

Metodlar

Response nesnesinin bir çok metodu vardır; bunlardan .Write’ı yukarıdaki örneklerde sık sık kulandık:

<%DIM Adi_SoyadiAdi_Soyadi = “Necip Fazıl Dayanır”Response.Write(“Merhaba, benim adım, “ & Adi_Soyadi)%>

Page 10: sunu (Asp-2)

15.04.2023 10

Özellikler

Response nesnesinin bir çok özelliğini kullanarak ziyaretçimize göndereceğimiz sayfaları ve diğer unsurları yönetiriz:Buffer (Tampon) : True (doğru) olarak ayarlandığında ziyaretçiye gönderilecek sayfanın bütün unsurları bir tampon bölgede toplanır, Script’in çalışması bitinceye kadar beklenir ve HTML sayfa toptan gönderilir.

<%Option ExplicitResponse.Buffer = TRUE%>

Page 11: sunu (Asp-2)

15.04.2023 11

Uygulama (Application) ve Oturum (Session) Nesnesi

Application nesnesi, sitenin tümüyle ilgili bilgileri (değişkenleri, nesneleri ve metotları) tutar; Session nesnesi ziyaretçinin sitemize girmesinden itibaren izini sürer.

Session (“Tupras”) = 44500

Session için geçerli bir Tupras değişkeni oluşturur ve ona “44500” değerini atar.

Page 12: sunu (Asp-2)

15.04.2023 12

FORM ELEMANLARI

Bu konuyu bir köprü konu olarak nitelendire biliriz. Çünkü Html ve Asp yi bir arada göreceğimiz ve bu iki dilin birbirin ile bağlantılarını sağlıyan Form elemanlarından bahsedeceğiz.

Page 13: sunu (Asp-2)

15.04.2023 13

Şimdide get ile çağırıp kullanalım.

Page 14: sunu (Asp-2)

15.04.2023 14

Kodlarımızı yazdıktan sonra gönderiyoruz ve şekil alttaki gibi sonuç alıyoruz.

Page 15: sunu (Asp-2)

15.04.2023 15

ODBC ve OLE-DB

ADO gerçekten bir ASP nesnesi olmaktan çok Server Component'i (server bileşeni) sayılır. Bu bileşene biz ASP içinden bir ActiveX nesnesi ile ulaşılır. Yani daha anlaşılır biçimde söylemek gerekirse, ADO bir Server Bileşeni ve bu bileşene ulaşmak için bir ActiveX nesnesini kullanılır.

Page 16: sunu (Asp-2)

15.04.2023 16

ODBC’nin işlemesi

Veritabanı dosyasını istediğiniz bir veritabanı programı ile oluşturabilirsiniz. Bu konuda en çok kullanılan program Access' tır. Siz isterseniz Excel de kullanabilirsiniz. Burada vereceğimiz örnekler Access veritabanı programına göre olacaktır.Şimdi Access ile bir veritabanı oluşturalım. Veritabanımızın ismi örnekler olsun

adres

id Otomatik Sayı (birincil anahtar)

isim metin

telNo metin

adres metin (100)

Page 17: sunu (Asp-2)

15.04.2023 17

Şimdi Denetim Masasını açın. Oradan ismi ODBC (ya da ODBC 23 bit veya ODBC veri kaynakları, sizin bilgisayarınızda hangisi varsa!) onu açın. İkinci sekme olan Sistem DSN' ti tıklayın. Açılacak bölümdeki Ekle / Add düğmesini tıklayın. Burada veritabanınıza uygun sürücüyü seçin.. Biz burada Access ' ı kullandığımız için birinci seçeneği işaretleyip son diyoruz.

Page 18: sunu (Asp-2)

15.04.2023 18

Şimdi sıra veritabanını tanıtmakta.

Page 19: sunu (Asp-2)

15.04.2023 19

Sonuç olarak örnek isimli veritabanımızın başarılı bir şekilde tanıtıldığını görüyorsunuz

Page 20: sunu (Asp-2)

15.04.2023 20

Connection (Veritabanına bağlantı)

Ado' dan söz etmiştik. Veritabanına bağlanırken kullanacağımız Ado'nun Connection nesnesidir. Bu nesne ile veritabanına bağlantı sağlarız. Kullanımı şöyledir:

<%

Dim Veriyolu

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

Veriyolu.Open "Veri_Adi"

%>

Page 21: sunu (Asp-2)

15.04.2023 21

OLE-DB türü Veritabanı bağlantısı

Dim veriYolu, veriDeyim

Set veriYolu = server.CreateObject("ADODB.Connection")

veriDeyim = "Provider=Microsoft.Jet.OLEDB.4.0;" &_

" Data Source= C:\inetpub\wwwroot\ornek.mdb"

server.mapPath("ornek.mdb")

veriYolu.open (veriDeyim)

Page 22: sunu (Asp-2)

15.04.2023 22

Bir veritabanından veri okumak, veri değiştirmek veya eklemek için komutlarımızı bu dille vermek zorundayız. ASP amacıyla SQL komutlarından çok az kısmını kullanırız; bu bakımdan ASP Tasarımcısı olmak için sınırlı da olsa SQL öğrenmek gerekir.

Recordset (Kayıt dizisi)

Recordset.Open

Veritabanına dayanan Web uygulamalarımızda sorun buradaki gibi sadece veriyi okumakla bitmeyebilir; veriyi güncelleştirmek veya silmek isteyebiliriz. Bunun için doğruca ADO’nun .Recordset metodundan yararlanmamız gerekir. .Recordset metodu ne yapar? Tıpkı ekranınızdaki bir yazının içinde duran imleç (cursor) gibi hayalî bir imleci götürür verilerinizin en başına koyar. Bu hayali imleci veritabanı üzerinde dolaştırmak ve gittiği yerdeki değeri okutmak bizim işimizdir.

Page 23: sunu (Asp-2)

15.04.2023 23

ADO Sabit Değerleri

ADO+ODBC yoluyla kuracağımız veri bağlantıları, çoğu zaman adeta şifreli ifadeler içerebilir ve bir çok komutun argümanı öğrenmesi zor sayılar halinde verilir. Microsoft ve kullanılmaya hazır ASP Uygulamaları üreten firmalar, bu karmaşık ifadeleri düz metinler olarak ifade etmeye yarayan haricî dosyalar (include files) hazırlar ve sunarlar.

<!- - #include file=”adovbs.inc” - - >

Page 24: sunu (Asp-2)

15.04.2023 24

Recordset.Update

Veritabanından aldığımız değerleri, kimi zaman ziyaretçinin vereceği değerlerle veya ziyaretçinin bir takım tercihleri sonucu güncelleştirmemiz gerekir. Bu Recordset nesnesinin. Update metodu ile kolayca yapılır. Yalnız burada hassas bir nokta var: diyelim ki aynı anda iki veya daha fazla kullanıcı Web programımızın veritabanına ulaşır ve aynı anda değişiklik yaparlarsa ne olur?

Kayitdizisi.Open Sorgu, Veriyolu, aOpenStatic, adLockOptimistic

Page 25: sunu (Asp-2)

15.04.2023 25

Recordset.Delete

Bir veritabanındaki kaydı silmek de ADO ile oldukça kolaydır. İmleci, silinecek kaydın üzerine götürdükten sonra, Recordset’in , .Delete metodunu çağırarak o andaki kayıt silinir. Bu metod, bir kaydı bütün alanlarındaki değerlerle birlikte (yani veritabanının bir satırını tümüyle) siler:

Kayitdizisi.Update

Page 26: sunu (Asp-2)

15.04.2023 26

ReAddNew cordset.

Bir veritabanına yeni kayıt eklemek istediğimizde, Recordset’in .AddNew (yeni ekle) metodundan yararlanırız. Bu metodun özelliği bizim imleci veritabanı içinde bir yere götürme zorunluğumuz olmamasıdır. Bu metod kendiliğinden imleci dosyanın en son satırının altına götürür. .AddNew metodu bir veritabanı dosyasına kayıt eklerken, veritabanında mevcut bütün alanlar için değer vermenizi isteyecektir

<%Kayitdizisi.AddNewKayitdizisi(“Adi”) = “Necip Fazıl”Kayitdizisi(“Soyadı”) “Dayanır”Kayitdizisi(“TelNo”) = “0342-3390000”Kayitdizisi.UpdateResponse.Write (“Kayıt Tamamlandı”)%>

Page 27: sunu (Asp-2)

15.04.2023 27

TEŞEKKÜRLER..