ana sayfa hakkında forum (yeni) rss takibi reklam yerleşimi iletişim giriş

İçerik Kategorileri

  1. Active Server Pages
    1. Temel Konular [15]
    2. Genel İçerikler [12]
    3. Nesne Kütüphanesi [0]
    4. Form Elemanları [4]
    5. Döngü İfadeleri [3]
    6. Veritabanı İşlemleri [9]
    7. Fonksiyonlar [2]
    8. Hatalar ve Çözümleri [16]
  2. ASP Hızlı Referans
    1. TextStream Nesnesi [7]
    2. Response Nesnesi [1]
    3. Request Nesnesi [1]
    4. Application Nesnesi [1]
    5. Session Nesnesi [4]
    6. Server Nesnesi [0]
    7. FSO Nesnesi [4]
  3. Browser Scripting
    1. VBScript [4]
    2. SQL Sorgulama [4]
  4. MySQL [0]
  5. Uygulamalar
    1. Hazır Fonksiyonlar [3]
    2. Hazır Kodlar [9]
    3. Script Algoritmaları [3]
    4. Script Geliştiriyoruz [2]

Sitede Ara


Hosting Sponsorumuz

Nis

6

ASP ile Sayfalama

Temel Konular1 yorum7356 izlenimhakan

Bu yazımızda web sayfalarında sıklıkla gördüğümüz sayfalama yönteminden bahsedeceğiz.


Zaman zaman tasarımımız gerekiği içeriğimiz belirlediğimiz sayfa ya da bölüme sığmayabilir. Bu tür durumlar için genellikle sayfalama yöntemi kullanılır. ASP ile sayfalama yapmanın en kolay yöntemi veritabanındaki verileri kayıt setine kaydedip pagecount ve pagesize yöntemini kullanmaktır.

Sayfalama yapmanın farklı yöntemleri de bulunmaktadır, ilerleyen yazılarımızda bunlardan da bahsedeceğiz.

Aşağıdaki kodların inceleyerek aklınıza takılan soruları sorabilirsiniz.

<%          
     Set objRS = SizinRecordsetiniz 'buraya sizin kayıtsetinizi (Recordset) yazınız.
      
     s = CInt(Request.QueryString("s" )) ' sayfa numarası burada alınıyor.
     ss = CInt(Request.QueryString("ss" )) ' bir sayfada kaç kayı gözükeceği burada alınıyor.

      If ss < 1 Then ss = 20 ' varsayılan olarak bir sayfada kaç kayıt gösterileceği burada atanıyor.

     objRS.CacheSize = ss
     objRS.PageSize = ss

     p = s

     If p < 1 Then
          Gosterilen = 1
     Else
          Gosterilen = Int(p)
     End If

     TKayit = objRS.PageCount

     If Gosterilen > TKayit     Then Gosterilen = TKayit
     If Gosterilen < 1          then Gosterilen = 0
     If Gosterilen = 0          then
          Response.Write ""
     Else
          objRS.AbsolutePage = Gosterilen
     End If

     sayfalar = objRS.PageCount

     objRS.absolutepage = Gosterilen
      
     For konu=1 To objRS.PageSize
       If objRS.Eof Then Exit For  
%>
          listelenecek veriler ' buraya for döngüsü arasında listelenecek verileri yazınız.
<%
       objRS.Movenext
     Next
%>

<% '######### SAYFA NUMARALARI ############ %>
<table class="yazi_normal" cellspacing="0" cellpadding="5" width="100%" border="0">
<tr>
  <td width="50%"> Sayfa(lar) :  
<%

limit = 5

If Gosterilen <> 1 Then
     Response.Write "<a href=?s=1 title='İlk sayfaya git' style='text-decoration: none'><font size=2 face=webdings>7</font></a></a> "
End If

If Gosterilen > 2 Then
     Response.Write "<a href='?s=" & Gosterilen - 1 & "&ss=" & ss & "' title='Bir önceki sayfaya git' style='text-decoration: none'><font size=2 face=webdings>3</font></a> "
End If

For y=1 To objRS.PageCount
     If Gosterilen=y Then
          Response.Write "<font size=1><b>[" & y & "></b></font>" & " "
     Else
          If Gosterilen-limit < y and y < Gosterilen+limit Then
               Response.Write "<font size=1><a href=?s=" & y & "&ss=" & ss & " style='text-decoration: none'>[" & y & "></a></font> "
          End If
     End If
Next

If Gosterilen < objRS.PageCount-1 Then
     Response.Write "<a href='?s=" & Gosterilen + 1 & "&ss=" & ss & "' title='Bir sonraki sayfaya git' style='text-decoration: none'><font size=2 face=webdings>4</font></a> "
End If

If Gosterilen <> objRS.PageCount Then
     Response.Write "<a href='?s=" & objRS.PageCount & "&ss=" & ss & "' title='Son sayfaya git' style='text-decoration: none'><font size=2 face=webdings>8</font></a> "
End If
%>
  </td>
  <td align="center"> <a href="#">Yukarı</a></td>
  <td width="50%">
     <P align="right">
       <%
          For sayfasayisi=10 To 30 Step 10
               If sayfasayisi=ss Then sayfasayisi=sayfasayisi+10
         %>
               <a href="?s=<%=s %>&ss=<%=SayfaSayisi %>" alt="Bu sayfada <%=SayfaSayisi %> tane soru göster"><%=SayfaSayisi %></a>  
       <% Next %>
     [ <%=Gosterilen %> / <%=objRS.Pagecount %> >
     </P>
  </td>
</tr>
</table>


Görüldüğü gibi basit bir şekilde ASP'de sayfalama pagecount ve pagesize yöntemi ile bu şekilde yapılabilir. Ancak veritabanınıza Execute yöntemi ile bağlandıysanız kayıt setindeki veri sayısını saydırmak için pagecount özelliğini kullanamazsınız. Bu konuya ilerleyen yazılarımızda bahsedeceğiz.

Etiketler  :  pagecount   asp   sayfalama   pagging   execute   pagesize  

İçeriği takip etSayfayı YazdırPermalink

1 yorum var

#818.-canci-06 Mayıs 2010 Perşembe

Sayfa listeleme değilmi bir dizindeki sayfaları listeliyor dimi. yanlış mı anladım?
Sanırım dizin bu satırda belirtiliyor tam olarak nasıl ?
Set objRS = SizinRecordsetiniz


Bu içeriğe yorum yazın

BBCode ve Emotions desteği aktif. Yorumunuz onaylandıktan sonra gösterilecektir.

Bu yazı ile benzer içeriğe sahip olabilecek yazılar

  1. ASP web programcılığı
  2. ASP yazım kuralları
  3. ASP (Aktif Sunucu Sayfaları) Nasıl Çalışır?
  4. Asp ile Sub Kullanımı
  5. IIS Kurulumu ve Okuma Yazma İzni
  6. Include Deyimi
  7. Detaylara Bakabilme
  8. Çoklu kayıt silme
  9. SQL Server ve Stored Procedure

Yazının aktif olduğu kategoriye eklenmiş son yazılar

  1. IIS Kurulumu ve Okuma Yazma İzni
  2. Jmail Mail Bileşeni ile Mail Göndermek
  3. Cdonts Mail Bileşeni ile Mail Göndermek
  4. Aranan Kelimenin Arkaplan Rengini Değiştirme
  5. Veritabanına bağlanmak ve veri almak
  6. Basit 2 fonksiyon
  7. Veritabanında arama yapmak

Tavsiye linkler: Kolay Pasta Tarifleri | İftar Vakitleri