Il convient de dire que si vous avez appris à insérer des enregistrements et à afficher des enregistrements, un système d'articles simples et complet, un système d'information et un système de messages ne sont pas un problème maintenant. Ensuite, la question suivante est: à mesure que le contenu d'information augmente dans les segments, il n'est pas acceptable d'afficher toutes les informations via une page seule. Par conséquent, la solution consiste à utiliser la technologie de pagination.
1, Rs.recordCount
De toute évidence, RecordCount est utilisé pour afficher le nombre d'enregistrements dans la table de la base de données, et il peut également décrire très bien le nombre de lignes dans le tableau. Il est souvent utilisé dans la pagination pour afficher un total de n articles et autres informations.
2. Rs.Pagesize
Rs.PageSize est la taille d'une page, ce qui signifie qu'une page ASP peut afficher le nombre d'enregistrements. Les valeurs sont définies par vous-même, telles que des informations telles que N articles affichés sur chaque page que vous voyez souvent.
3. Rs.Absolupage et Rs.PageCount
En ce qui concerne la pagination, vous ne devez pas mentionner Rs.Absolupage. La fonction principale de la propriété Absolutepage de l'ensemble d'enregistrements est de déterminer quelle page est actuellement affichée. Sa valeur est basée sur. Si Rs.PageSize est spécifié, la valeur d'information de Rs.PageCount est le résultat divisant de Rs.RecordCount et Rs.PageSize. Par exemple: l'enregistrement total des informations Rs.RecordCount a 20 éléments et le nombre d'éléments affichés par page est défini sur 5 éléments. Ensuite, le nombre de pages Rs.PageCount est de 20/5 = 4 pages, tandis que Rs.Absolutepage ne peut être que la page 1, page 2 ... Page 4.
En parlant maintenant, nous trouverons un programme spécifique à déboguer. Continuez à modifier Showit.asp comme suit:
<! - # Inclure file = "Conn.asp" -> <% Set rs = server.createObject ("adodb.recordSet") SQL = "SELECT * FROM CNARTICLE ORDER par CN_ID DESC" Rs.Open SQL, Conn, 1,1 %> <% page = request.querystring ("page") 'La valeur de la page est la valeur acceptée Rs.PageSize = 2 'Nombre d'enregistrements affichés par page Rs.Absolutepage = Page 'Afficher la page actuelle est égale au nombre de pages reçues %> <% Pour i = 1 à Rs.PageSize 'Utilisation for Next Loop pour lire l'enregistrement de la page actuelle en séquence Si Rs.Eof alors Sortir pour terminer si réponse.write ("<br> Le contenu de l'article est:" & rs ("cn_content")) Rs.MovEnext Next%> <% Rs.Close Définir RS = rien Conn.Close Définir Conn = Rien %> |
Ici, la prémisse de votre débogage est que les enregistrements dans la base de données doivent être relativement supérieurs à 4, de sorte que l'effet de test sera évident; La méthode de test consiste à ajouter? Page = 1 ou? Page = 2 et autres débogage pour observer l'effet d'affichage de la page Web après showit.asp.
En fait, après tout, l'affichage du contenu de la base de données est
<% Pour i = 1 à Rs.pagesize Si Rs.Eof alors Sortir pour terminer si réponse.write ("<br> Le contenu de l'article est:" & rs ("cn_content")) Rs.MovEnext Next%> |
La fonction est jouée, mais imaginez: le programme ne doit afficher que 2 informations (2 informations qui restent inchangées). Mais pourquoi l'ajout? Page = 1 et? Page = 2 montrent des résultats différents? ... C'est certainement la fonction de Rs.Absolutepage. Je comprends clairement cela, je crois que l'architecture globale de la pagination est un peu déroutante.