Faktanya, AJAX bukanlah sesuatu yang dapat dicapai hanya dengan menulis JS. Anda masih harus memiliki pengalaman pemrograman tertentu, jika tidak, meskipun Anda menulisnya, idenya tidak jelas dan Anda tidak akan tahu harus mulai dari mana perubahan di masa depan. Jadi setelah saya sempat mengenal pemrograman berorientasi objek, saya merasa tidak mudah untuk melakukannya dengan baik di AJAX. Mengapa saya menyebutkan AJAX ketika saya menulis tutorial paging ASP? berlatih lebih banyak tentang pentingnya struktur dalam proses pemrograman.
Selain itu, banyak teman yang memiliki perasaan yang mendalam tentang paging, sehingga tidak pernah berani menyentuhnya, entah menggunakan komponen yang ditulis orang lain, atau memodifikasi barang orang lain. Khusus untuk .net, saya sangat merasakannya jika ingin cepat Saat berkembang sebuah proyek, menurut saya .net adalah platform yang sangat bagus. Karena sangat terkontrol, pemula tidak dapat memahami ide pemrograman dan tidak dapat menemukan perasaan pemrograman sama sekali, seolah-olah itu adalah blok bangunan. Terkadang Anda masih perlu mempraktikkan hal-hal tingkat rendah, agar kemampuan teknis pribadi Anda dapat ditingkatkan. Dapatkan peningkatan. Saya tidak ingin menjadi assembler yang hanya bisa menggunakan .NET.
Oke, berikut source code paging ASP untuk semuanya, sudah dikomentari secara detail dan secara umum dapat dipahami.
Karena ini tutorial, saya akan mulai dari yang paling sederhana. Saya langsung menggunakan AbsolutePage untuk mendefinisikan halaman saat ini, jadi saya tidak menggunakan metode kursor yang lebih rumit seperti MoveFirst, dan saya juga menggunakan kotak pilihan drop-down untuk paging. Saya akan menunggu tutorial selanjutnya. Saya akan menulis metode paging lanjutan lainnya, memberikan metode untuk memajukan sepuluh halaman, mundur sepuluh halaman, dan hanya menampilkan grup sepuluh halaman saat ini.
Walaupun ASP sudah ketinggalan jaman, karena bisa ditulis menggunakan JS, saya rasa saat mengerjakan proyek DEMO, menggunakan ASP lebih nyaman dibandingkan .NET atau JAVA, karena tidak perlu menginstal lingkungan yang besar. Sederhana Cukup konfigurasikan saja Jika memang perlu mengembangkan proyek skala besar, saya pasti akan menggunakan .NET atau JAVA, karena ini akan menyangkut masalah efisiensi.
Copy kode kodenya sebagai berikut:
<%@LANGUAGE=KODE JAVASCRIPT=936%>
<%
//Definisikan pernyataan koneksi database
var connstring = Penyedia=Microsoft.Jet.OLEDB.4.0;Sumber Data=
+Server.MapPath(database/vote.mdb);
//Buat kueri basis data rs
var rs = Server.CreateObject(ADODB.Recordset)
//metode koneksi rs
rs.ActiveConnection = koneksi
//pernyataan kueri rs (kueri dalam urutan terbalik dari waktu pengiriman pengguna)
rs.Source = pilih * dari pesanan pengguna berdasarkan waktu penggunaan DESC
//Tentukan mode kueri basis data
rs.Tipe Kursor = 3
rs.Lokasi Kursor = 3
rs.LockType = 1
//Tentukan jumlah data yang ditampilkan pada setiap halaman
rs.Ukuran Halaman = 10
//Buka koneksi database
rs.Buka()
//Tentukan jumlah total catatan basis data, jumlah total halaman, dan jalur URL
jumlah var,pagecos,Url ini
jumlah = rs.RecordCount
pagecos = rs.PageCount
thisUrl = Permintaan.ServerVariables(URL)
//Jalankan jika kursor ada di tabel
if(!rs.EOF || !rs.BOF){
//Jalankan jika parameter halaman url tidak kosong
if(Permintaan(halaman).Hitungan != 0){
//Tentukan string tautan default, halaman pertama, halaman terakhir, halaman sebelumnya, halaman berikutnya
//Nilai halaman dari URL (halaman saat ini yang ditentukan), halaman saat ini, jumlah data saat ini yang ditampilkan pada setiap halaman
var defaltStr,halaman pertama,halaman terakhir,halaman awal,halaman berikutnya,halaman,halaman sekarang,ukuran sekarang
defaltStr = '<a href='+Url ini+'?halaman='
halaman pertama = defaltStr+'1>Beranda</a>'
halaman terakhir = defaltStr+pagecos+'>Halaman terakhir</a>'
halaman = Permintaan(halaman)
//Jika ada di halaman pertama
//Halaman beranda, halaman sebelumnya bukan link
jika(halaman <= 1){
rs.Halaman Absolut = 1;
halaman pertama = 'Beranda'
prepage = 'halaman sebelumnya'
halaman berikutnya = defaltStr+'2>Halaman berikutnya</a>'
//Jika ada di halaman terakhir
//Halaman terakhir, halaman berikutnya bukan link
}else if(halaman >= pagecos){
rs.AbsolutePage = pagecos;
prepage = defaltStr+(pagecos-1)+'>Halaman sebelumnya</a>'
halaman terakhir = 'halaman terakhir'
halaman berikutnya = 'halaman berikutnya'
}kalau tidak{
rs.AbsolutePage = halaman
prepage = defaltStr+(Nomor(halaman)-1)+'>Halaman sebelumnya</a>'
halaman berikutnya = defaltStr+(Nomor(halaman)+1)+'>Halaman berikutnya</a>'
}
}
sekarangPage = rs.AbsolutePage
sekarangUkuran = rs.PageSize
//Jika berada pada halaman terakhir dan jumlah data yang ditampilkan tidak sama dengan jumlah data yang ditampilkan pada setiap halaman
//Karena halaman terakhir tidak bisa sama persis dengan jumlah data yang ditampilkan pada setiap halaman setiap saat
//Jadi, Anda perlu mendefinisikan metode yang tidak setara
if(nowPage >= pagecos && (pagecos*rs.PageSize)%counts != 0){
nowSize = menghitung%rs.PageSize
}
%>
<lebar tabel=100% batas=0 spasi sel=0 bantalan sel=0 kelas=info pengguna>
<tr>
<td menyelaraskan=tengah>
<!--Tampilkan beranda, halaman sebelumnya-->
<%=halaman pertama%> <%=halaman awal%>
Lompat ke <pilih onchange=location.href='<%=thisUrl%>?page='+this.value>
<%
//Paging bergantung pada tampilan loop
untuk(var angka=1; angka<=pagecos; angka++){
if(sekarangHalaman == nomor){
%>
<nilai opsi=<%=num%> dipilih=dipilih><%=num%></option>
<%
}kalau tidak{
%>
<nilai opsi=<%=num%>><%=num%></option>
<%
}
}
%>
halaman </pilih>
<!--Tampilkan halaman berikutnya, halaman terakhir-->
<%=halaman berikutnya%> <%=halaman terakhir%>
<!--Menampilkan nomor halaman saat ini, jumlah halaman total, jumlah total catatan, dan jumlah data yang ditampilkan pada setiap halaman-->
Total <%=nowPage%> / <%=pagecos%> halaman<%=counts%> / <%=rs.PageSize%> catatan
</td>
</tr>
<%
//Konten ditampilkan dalam satu lingkaran
untuk(var i=1;i<=ukuran sekarang;i++){
%>
<tr>
<td><span>IP Pengguna:</span><%=rs(usip)%></td>
</tr>
<tr>
<td><span>Saran:</span><%=rs(us1)%></td>
</tr>
<tr>
<td><span>Waktu pengiriman:</span><%=rs(usetime)%></td>
</tr>
<%
//Kursor database berpindah ke record berikutnya
rs.MoveNext();
}
%>
</tabel>
<%
//Jika kursor database tidak ada pada kolom database
}kalau tidak{
Response.Write (Tidak ada informasi pengguna!)
}
//Tutup koneksi basis data
rs.Tutup()
%>