Il y a encore de nombreux adeptes sur certains forums sur les programmes de pagination ASP, mais il n'y a que des codes et aucune explication détaillée. Pour les débutants, cela ne parviendra toujours pas à vraiment comprendre. Pagination ASP ! Voyons d’abord l’effet !
Jetez un œil à la fonction : Le programme de radiomessagerie lit d'abord le nombre d'enregistrements prédéfinis sur chaque page, ici c'est 5, et les autres seront affichés sur la page suivante. En même temps, il demande le numéro de page actuel, total. numéro de page et numéro d'enregistrement total Lorsque le nombre de pages est affiché Lorsqu'il s'agit de la première page, les liens vers la page d'accueil et la page précédente sont invalides. Lorsque le nombre de pages affiché est la dernière page, les liens vers la page d'accueil et la page précédente sont invalides. la page suivante et la dernière page ne sont pas valides.
Ensuite, je vais vous expliquer comment créer cet effet de pagination étape par étape avec des exemples.
Tout d'abord, le champ record_info dans la base de données existe dans la table info (vous pouvez avoir une certaine compréhension de la base de données lors de l'apprentissage de la pagination ASP). Tout d'abord, connectez-vous à la base de données et ouvrez un jeu d'enregistrements.
Voici le contenu cité :
<%
Définir conn=Server.CreateObject(Adodb.Connection)
connstr=provider=Microsoft.JET.OLEDB.4.0;Source de données=&Server.MapPath(data.mdb)
conn.open connstr
Définir rs=Server.CreateObject(Adodb.Recordset)
sql=Sélectionner * dans les informations
rs.open sql, conn, 1,1
%>
Ce code n'est pas expliqué en détail. Je pense que les débutants le comprendront. Pour une explication détaillée, vous pouvez lire le tutoriel "Vous apprendre à utiliser ASP pour créer un livre d'or". Ensuite, c'est la partie la plus importante de la pagination. . Il ne contient que trois lignes :
Voici le contenu cité :
<%
rs.pagesize=5
curpage=Request.QueryString(curpage)
rs.absolutepage=curpage
%>
Deuxième phrase :
rs.pagesize =5, qu'est-ce que cela signifie ? Il s'agit d'une propriété intégrée à l'objet Recordset. Sa fonction est de spécifier le nombre d'enregistrements par page. Lorsqu'elle est définie sur 5, tous les 5 enregistrements sont rassemblés sur une seule page. exemple Ensuite, utilisez rs Après la pagination par .pagesize, ces 21 enregistrements seront divisés en 5 pages pour l'affichage.
La troisième phrase :
Ceci est principalement utilisé pour la fonction de tournage de page. Le paramètre de publication curpage de l'URL est transmis à la variable curpage. Ce curpage obtiendra le nombre de pages que le spectateur souhaite atteindre. (Vous comprendrez après avoir exécuté l'exemple)
La quatrième phrase :
rs.absolutepage, c'est aussi un attribut intégré, ce qui signifie spécifier la valeur de la variable curpage comme page actuelle.
Vous pouvez maintenant afficher les enregistrements en boucle :
Voici le contenu cité :
<%
pour i = 1 à rs.pagesize
si rs.eof alors
sortie pour
finir si
%>
<%=rs(record_info)%><br>
<%
rs.movenext
suivant
%>
Deuxième phrase : utilisez une boucle for pour afficher le nombre d'enregistrements spécifié dans l'attribut rs.pagesize sur chaque page.
Les troisième, quatrième et cinquième phrases : Cette phrase signifie quitter la boucle lorsque la dernière page ne peut pas atteindre l'enregistrement spécifié pour éviter les erreurs.
La septième phrase : La liaison du champ record_info extrait de la base de données entraîne l'affichage en boucle des enregistrements de ce champ.
Phrase 9 : utilisez la méthode rs.movenext pour déplacer l'ensemble d'enregistrements rs d'un enregistrement.
Phrase 10 : instruction de boucle for.
De plus, vous pouvez utiliser <%=curpage%> pour lire la page actuelle, utiliser <%=rs.pagecount%> pour lire le nombre total de pages et utiliser <%= rs.recordcount%> pour lire le nombre total de dossiers. Par exemple : La page actuelle <%=curpage%> contient un total de <%= rs.pagecount%> pages et un total de : <%=rs.recordcount%> enregistrements.
Dans la fonction d'affichage de la page d'accueil, la page précédente, la page suivante et la dernière page, des instructions if...else... sont utilisées, ce qui est plus facile à comprendre.
Voici le contenu cité :
<%if curpage=1 alors%>
première page
<%else%>
<a href=?curpage=1>Page d'accueil</a>
<%end if%>
<%if curpage=1 alors%>
Page précédente
<%else%>
<a href=?curpage=<%=curpage-1%>>Page précédente</a>
<%end if%>
<%if rs.pagecount<curpage+1 then%>
Page suivante
<%else%>
<a href=?curpage=<%=curpage+1%>>Page suivante</a>
<%end if%> <%if rs.pagecount<curpage+1 then%>
Dernière page
<%else%>
<a href=?curpage=<%=rs.pagecount%>>Dernière page</a>
<%end if%>
Comprendre:
Page d'accueil : Ceci est déterminé par le fait que la page actuelle est la première page. Si la page actuelle est la première page (c'est-à-dire la page d'accueil), alors le mot page d'accueil sera affiché sans lien. Sinon, un lien sera affiché. être fourni pour accéder directement à la page d'accueil.
Page précédente : Lorsque la page actuelle est la première page, le lien est invalide. À son tour, le lien renvoie à la page précédente. Ici, utilisez : <%=curpage-1%>, ce qui signifie soustraire 1 du numéro de page actuelle. pour obtenir la page précédente.
Page suivante : vous devez utiliser l'attribut rs.pagecount à des fins de comparaison. Si le nombre total de pages est inférieur au numéro de page actuel plus 1, cela signifie qu'il s'agit de la dernière page et que le lien sera invalide. sera à la page suivante.
Dernière page : la même fonction que la page suivante. Lorsqu'il est déterminé qu'il s'agit de la dernière page, le lien sera invalide. Sinon, la page actuelle sera désignée comme rs.pagecount (nombre total de pages).
Ce didacticiel se termine ici. Après l'explication, tout le monde devrait avoir une compréhension plus approfondie de la technologie de pagination ASP, n'est-ce pas ? Si vous avez des questions, vous pouvez me contacter en laissant un message sur le blog.