Ikuti sistem artikel normal sepenuhnya. Penambahan artikel backend, pengambilan artikel, dan halaman detail artikel semuanya dioperasikan dengan cara biasa. Tidak ada deskripsi di sini.
Perlu dicatat bahwa [halaman] perlu menghapus spasi di tengah. Karena diulangi dengan halaman latar belakang Beranda Skrip, spasi ditambahkan.
Saat menambahkan artikel, tambahkan hentian halaman di tempat yang Anda inginkan untuk menempatkannya: [halaman] (Tentu saja, Anda dapat menggunakan simbol ini dengan santai, seperti: [halaman], &&&, ###, @@@.. ., selama Itu tidak akan muncul di tempat artikel seharusnya ditampilkan secara normal.)
Saya menggunakan empat halaman, halaman input (index.asp), halaman penyelesaian input (add.asp), halaman daftar artikel (view.asp), dan halaman konten artikel (text.asp). perlu diproses.lihat pendahuluan berikut, menurut saya burung biasa bisa melakukannya.Kuncinya adalah text.asp terakhir, semua kode untuk mengimplementasikan paging ada di sini.
Langkah 2: Ayo
Lakukan beberapa trik pada bagian data dinamis badan artikel. Berikut kode dan penjelasannya:
Salin kode sebagai berikut:'Berikut adalah kode untuk memproses paging
' Supaya aman, kita gunakan fungsi replace untuk menambahkan spasi lebar penuh sebelum dan sesudah kode paging
MMText=replace(rs(contents),[ page ], [ page ] )
MMfText= split(MMText,[ page ])
'Gunakan fungsi ubound untuk mendapatkan jumlah halaman yang akan dibagi. Perhatikan bahwa nilai subskrip dimulai dari 0
contentNum=ubound(MMfText)
page=Clng(request(page))
if page<1 lalu
page=1
end if
'Agar terlihat lebih intuitif, kita atur halaman awal menjadi 1, lalu tambahkan 1 ke jumlah total halaman
jika page>contentNum+1 lalu
page=contentNum+1
end if
'Ubah ke variabel sisi yang akan ditampilkan diperoleh dari parameter url di atas, dan tampilkan halaman dalam satu lingkaran
untuk i=page ke halaman
respon.tulis MMfText(i-1)
next
' Cantumkan pagination
jika cint(contentNum)>0 lalu
jika halaman<>1 lalu
respon.tulis <a href='text.asp?id=&request(id)&&page=&page-1&'>[Halaman sebelumnya]</a>
diakhiri jika
'Ingat bahwa nilai subskrip berasal dari Mulai dari 0, kita mulai paging dari 1 di sini, dan menambahkan 1 ke total
untuk p=1 hingga contentNum+1
jika page=p lalu
respon.tulis <a href='text.asp?id=&request(id)&&page= &p&'> <font color=red>[&p&]</font></a>
else
respon.tulis <a href='text.asp?id=&request(id)&&page=&p&'>[&p&]</a>
berakhir jika
berikutnya
jika page<>contentNum+1 lalu
respon.tulis <a href='text.asp?id=&request(id)&&page=&page+1&'>[halaman berikutnya]</a>
berakhir jika
berakhir Jika
di bawah ini adalah artikel dari website lain, Anda juga dapat merujuknya.
Halaman artikel yang panjang ditampilkan dengan jeda halaman. Saya ingin menggunakan ASP untuk mengimplementasikan fungsi ini, tetapi saya menemukan bahwa hanya ada metode penomoran halaman berdasarkan jumlah kata. Namun, metode ini memiliki bug, yaitu jika terdapat kode UBB pada konten artikel anda, caranya sangat mudah. Hal ini menyebabkan pagination antar [code][/code], atau hanya menguraikan [code] menjadi [co dan de] sehingga menyebabkan error pada tampilan artikel.
Langkah-langkah berikut akan memungkinkan hal ini.
Langkah 1:
Ikuti sistem artikel normal sepenuhnya. Menambahkan artikel di latar belakang, mengambil artikel, dan halaman detail artikel semuanya dilakukan dengan cara biasa. Tidak ada deskripsi di sini. Saat menambahkan artikel, tambahkan hentian halaman di tempat yang Anda inginkan: |||. (Tentu saja, Anda dapat menggunakan simbol ini dengan santai, seperti: [ halaman ], &&&, ###, @@@..., selama tidak muncul di tempat artikel akan ditampilkan secara normal.)
Saya menggunakan empat halaman, halaman input (index.asp) dan halaman penyelesaian input (tambahkan). .asp), halaman daftar artikel (view.asp), halaman isi artikel (display.asp), tiga halaman pertama adalah halaman yang tidak perlu diolah. Melihat gambar di bawah ini, menurut saya burung biasa bisa lakukanlah. Kuncinya adalah A display.asp yang terakhir, semua kode untuk mengimplementasikan paging ada di sini.
Langkah 2:
Lakukan beberapa trik pada bagian data dinamis teks artikel. Berikut kode dan penjelasannya:
Salin kode sebagai berikut:
<%
'Di sini kita perlu memproses parameter paging yang diterima untuk menampilkan konten halaman mana
' Dua kalimat berikut membiarkan variabel pageNum mengambil nilai halaman pertama jika tidak ada parameter halaman yang diteruskan: 0
If Request(page)= Then
pageNum=0
'Jika tidak, tetapkan variabel nilai parameter di halaman yang dilewati , untuk menampilkan
halaman
lainLainnyapageNum=Permintaan(halaman)
Berakhir jika
%>
<%
'Jika Anda menambahkan kode UBB eksekusi opsional, Anda dapat menambahkan
kode berikut (NoUBB) adalah kolom di database tentang menonaktifkan UBB, 0 berarti menonaktifkan, 1 berarti eksekusi
Jika rs(NoUBB)=0 lalu
'Untuk menghindari kesalahan saat menghubungkan ke konten artikel, gunakan fungsi Ganti untuk menambahkan lebar penuh sebelum dan sesudah kode halaman |||
'rs(konten) adalah kolom teks di database, tambahkan UBB di sini Atau nonaktifkan UBB
Content=Replace((unHTML(rs(content))),|||, ||| )
Elseif rs(NoUBB)=1 maka
Content=Replace((ubb(rs(content))),|||, || |. )
End if
%>
<%
'Ini kuncinya
' Kita menggunakan fungsi split untuk mengambil artikel menjadi beberapa bagian dan menyimpannya dalam variabel content
ContentStr=split(Content,|||)
'Menurut variabel yang akan ditampilkan yang baru saja diperoleh dari parameter URL, tampilkan halaman dalam satu lingkaran
Untuk i=pageNum hingga pageNum
%>
<!--Ini akan menjadi isi teks artikel-->
<%= ContentStr %>
< % Berikutnya %>
</td>
</tr>
<tr>
<td height=30 class=ClassName>Artikel ini dibagi menjadi
<%
'Di area paging, gunakan ubound(ContentStr) untuk mengetahui berapa halaman artikel tersebut dibagi. Perhatikan bahwa ini dimulai dari 0, jadi jumlah halaman perlu ditambah 1.
Untuk p = 0 hingga ubound(ContentStr) )
'Tautannya masih halaman ini, tetapi artikelnya Parameter paging harus ditambahkan setelah parameter ID: halaman
%>
<a href=display.asp?ID=<%=rsquest(ID)%>&page=<%= p%> kelas=><%=p+ 1%></a>
Halaman <% Next %>
ini sangat sederhana, jika semua komentar dihapus hanya memiliki 15 baris kode, namun masih perlu diproses agar dapat berfungsi untuk menyorot halaman sebelumnya, halaman berikutnya dan halaman saat ini. Ini akan menjadi sempurna.
Sudah diuji, kecuali page break muncul di artikel, semua jenis error tidak akan salah. Tentu saja, Anda dapat menambah jumlah |||, misalnya: ||||||, dan itu akan terjadi boleh saja jika enam |. atau kurang muncul di artikel. , tetapi jika lebih dari enam, akan ada hentian halaman yang bagus.