Şöyle düşünün ki biz bir sayfaya veritabanında ki kayıtları çekiyoruz.Fakat kayıt sayısının sınırı yok olduğunu düşünün.Yani sonsuz döngü kullanıyorsunuz.Peki ya kayıt sayısı üst seviyelere ulaştığında ne gibi dertler ortaya çıkacak hemen söyleyelim.İlk olarak sayfa aşağı doğru sarkacak.Sonra kullanıcı arayacağı kayıtları bulmada zorluk çekecek.Sayfanın tasarımı bozulacak ve kullanıcı sıkılacak.Bu tür yanlış durumlar yerine sayfalama diye bir kavram oluşsa fena mı olur.Biz istiyoruz ki alt tarafta linklerimiz oluşsun sayfaların ve kullanıcı 1. sayfada atıyorum 10 kayıt ile karşılaşıyorsa diğer 2. sayfaya tıkladığında bir 10 kayıt daha çıksın.Böylece hem kayıtları kolay bulsun hem bir esneklik söz konusu olsun.Şimdi hemen başlayalım isterseniz.Hemen yeni bir Access veritabanı oluşturalım."ID=Otomatik Sayı,Veri = Not" şeklinde "kayitlar" adında tablomuzu oluşturarak kayıt edelim ve veritabanı ismimizi "database.mdb" olarak değiştirelim.Daha sonra Default.asp sayfamı hazırlamaya koyulayım...
Default.asp :
<%
Dim baglanti,rs,Pg,PgAll,records,pages
Set baglanti = Server.CreateObject("Adodb.Connection")
baglanti.Open "Provider=Microsoft.Jet.Oledb.4.0;Data Source=" & Server.MapPath("database.mdb")
Set rs = Server.CreateObject("Adodb.Recordset")
SQL = "Select * From kayitlar"
rs.Open SQL,baglanti,1,3
'Sayfalama Başlıyor...
Pg = Request.QueryString("Pg")
If Pg = "" Then
Pg = 1
End If
rs.PageSize = 10
rs.AbsolutePage = Pg
PgAll = rs.PageCount
For records = 1 To rs.PageSize
If rs.EOF Then Exit For
Response.Write(rs("Veri") & "<br />")
rs.MoveNext
Next
For pages = 1 To PgAll
If CInt(Trim(Pg)) = CInt(Trim(pages)) Then
Response.Write(pages)
Else
%>
<a href="Default.asp?Pg=<%=(pages)%>"><%=(pages)%></a>
<%
End If
Next
rs.Close
Set rs = Nothing
baglanti.Close
Set baglanti = Nothing
%>
Okunma : 93