Suivez le système d'articles normal jusqu'au bout. L'ajout d'articles d'arrière-plan, la récupération d'articles et la page de détails de l'article fonctionnent tous de la manière normale. Il n'y a pas de description ici.
Il convient de noter que [page] doit supprimer les espaces au milieu. Parce qu'il est répété avec la pagination en arrière-plan de Script Home, des espaces sont ajoutés.
Juste au moment d'ajouter un article, ajoutez un saut de page à l'endroit où vous souhaitez qu'il soit paginé : [page] (Bien sûr, vous pouvez utiliser ce symbole avec désinvolture, comme : [page], &&&, ###, @@@.. ., tant qu'il n'apparaîtra pas là où l'article devrait être affiché normalement.)
J'ai utilisé quatre pages, la page de saisie (index.asp), la page de complétion de saisie (add.asp), la page de liste d'articles (view.asp) et la page de contenu de l'article (text.asp). doit être traité. En regardant l'introduction suivante, je pense que les oiseaux ordinaires peuvent le faire. La clé est le dernier texte.asp, tous les codes pour implémenter la pagination sont ici.
Étape 2 : Venez
Faites quelques astuces dans la partie données dynamiques du corps de l'article. Voici le code et l'explication :
Copiez le code comme suit :'Voici le code pour le traitement de la pagination
' Par mesure de sécurité, nous utilisons la fonction de remplacement pour ajouter un espace sur toute la largeur avant et après le code de pagination
MMText=replace(rs(contents),[ page ], [ page ] )
MMfText= split(MMText,[ page ])
'Utilisez la fonction ubound pour obtenir le nombre de pages à diviser. Notez que la valeur de l'indice commence à 0
contentNum=ubound(MMfText).
page=Clng(request(page))
if page<1 then
page=1
end if
'Afin de paraître plus intuitif, nous définissons la page de démarrage sur 1, puis ajoutons 1 au nombre total de pages
si page>contentNum+1 then
page=contentNum+1
end if
'Changez la variable du côté à afficher obtenue à partir du paramètre url ci-dessus, et affichez la page dans une boucle
pour i=page to page
réponse.write MMfText(i-1)
next
' Pagination de la liste
si cint(contentNum)>0 alors
si page<>1 alors
réponse.write <a href='text.asp?id=&request(id)&&page=&page-1&'>[Page précédente]</a>
end if
'N'oubliez pas que la valeur de l'indice provient de En partant de 0, nous commençons la pagination à partir de 1 ici et ajoutons 1 au total
pour p=1 à contentNum+1
if page=p then
response.write <a href='text.asp?id=&request(id)&&page= &p&'> <police color=red>[&p&]</font></a>
else
réponse.write <a href='text.asp?id=&request(id)&&page=&p&'>[&p&]</a>
end if
next
if page<>contentNum+1 puis
réponse.write <a href='text.asp?id=&request(id)&&page=&page+1&'>[page suivante]</a>
fin si
fin Si
vous trouverez ci-dessous des articles provenant d’autres sites Web, vous pouvez également vous y référer.
Les pages d'articles longues sont affichées avec des sauts de page. Je souhaite utiliser ASP pour implémenter cette fonction, mais je peux constater qu'il n'existe qu'un moyen de paginer en fonction du nombre de mots. Mais cette méthode a un bug, c'est-à-dire s'il y en a. est le code UBB dans le contenu de votre article, c'est très simple. Cela provoque une pagination entre [code][/code], ou décompose simplement [code] en [co et de], provoquant des erreurs dans l'affichage de l'article.
Les étapes suivantes rendront cela possible.
Étape 1 :
Suivez le système d'articles normal jusqu'au bout. L'ajout d'articles en arrière-plan, la récupération d'articles et les pages de détails des articles s'effectuent de la manière habituelle. Il n'y a pas de description ici. Juste au moment d'ajouter un article, ajoutez un saut de page à l'endroit où vous souhaitez qu'il soit paginé : ||| (Bien sûr, vous pouvez utiliser ce symbole avec désinvolture, par exemple : [ page ], &&&, ###, @@@..., tant qu'il n'apparaît pas là où l'article doit être affiché normalement.)
J'ai utilisé quatre pages, la page de saisie (index.asp) et la page de complétion de saisie (ajouter). .asp), page de liste d'articles (view.asp), page de contenu d'article (display.asp), les trois premières sont des pages qui n'ont pas besoin d'être traitées. En regardant l'image ci-dessous, je pense que les oiseaux ordinaires le peuvent. faites-le. La clé est le dernier A displasy.asp, tout le code pour implémenter la pagination est ici.
Étape 2 :
Effectuez quelques astuces dans la partie données dynamiques du texte de l'article. Voici le code et l'explication :
Copiez le code comme suit :
<%
'Ici, nous devons traiter les paramètres de pagination reçus pour afficher le contenu de quelle page
' Les deux phrases suivantes permettent de laisser la variable pageNum prendre la valeur de la première page si aucun paramètre de page n'est passé : 0
If Request(page)= Then
pageNum=0
'Sinon, attribuez à la variable la valeur du paramètre dans la page passée , pour afficher d'autres
pagesAutre
pageNum=Request(page)
End if
%>
<%
'Si vous ajoutez du code UBB d'exécution facultatif, vous pouvez ajouter le
code suivant'rs(NoUBB) est le champ de la base de données concernant la désactivation de l'UBB, 0 signifie la désactivation, 1 signifie l'exécution
Si rs(NoUBB)=0 then
'Afin d'éviter les erreurs lors de la connexion avec le contenu de l'article, utilisez la fonction Remplacer pour ajouter une largeur complète avant et après le code de pagination |||
'rs(content) est le champ de texte dans le base de données, ajoutez UBB ici Ou désactivez UBB
Content=Replace((unHTML(rs(content))),|||, ||| )
Sinon, rs(NoUBB)=1 alors
Content=Replace((ubb(rs(content))),|||, || | )
End if
%>
<%
'Voici la clé
' Nous utilisons la fonction split pour retirer l'article en sections et les stocker dans la variable
contentStr=split(Content,|||)
'Selon la variable à afficher qui vient d'être obtenue du paramètre URL, afficher la page en boucle
For i=pageNum to pageNum
%>
<!--Ce sera le contenu texte de l'article-->
<%=ContentStr % >
< % Suivant %>
</td>
</tr>
<tr>
<td height=30 class=ClassName>Cet article est divisé en
<%
'Dans la zone de pagination, utilisez ubound(ContentStr) pour obtenir le nombre de pages en lesquelles l'article est divisé. Notez qu'il commence à partir de 0, le nombre total de pages doit donc être ajouté par 1.
Pour p = 0 à ubound(ContentStr. )
'Le lien est toujours cette page, mais l'article Un paramètre de pagination doit être ajouté après le paramètre ID : page
%>
<a href=display.asp?ID=<%=rsquest(ID)%>&page=<%= p%> class=><%=p+ 1%></a>
La page <% Next %>
est très simple si tous les commentaires sont supprimés, elle ne comporte que 15 lignes de code. Cependant, il reste encore à la traiter pour qu'elle puisse avoir les fonctions de mise en évidence de la page précédente, de la page suivante et de la page suivante. page actuelle. Ce sera parfait.
Il a été testé. À moins que le saut de page n'apparaisse dans l'article, tous les types d'erreurs ne se produiront pas mal. Bien sûr, vous pouvez augmenter le nombre de |||, par exemple : ||||||, et ce sera le cas. très bien si six | ou moins apparaissent dans l'article, mais s'il y en a plus de six, il y aura des sauts de page.