Las páginas de artículos largos se muestran con saltos de página. Quiero usar ASP para implementar esta función, pero puedo encontrar que solo hay una manera de paginar según la cantidad de palabras. Pero este método tiene un error, es decir, si existe. es el código UBB en el contenido de su artículo, es muy fácil. Esto provoca la paginación entre [código][/código], o simplemente descompone [código] en [co y de], provocando errores en la visualización del artículo.
Los siguientes pasos harán esto posible.
Paso 1:
siga el sistema de artículos normal hasta el final. La adición de artículos en segundo plano, la recuperación de artículos y las páginas de detalles de los artículos se realizan de la manera habitual. No hay descripción aquí. Justo al agregar un artículo, agregue un salto de página donde desee que se pagina: "|||" (Por supuesto, puede usar este símbolo de manera informal, como: [página], &&&, ###, @@@ ..., siempre y cuando no aparezca donde normalmente se mostrará el artículo)
Utilicé cuatro páginas, la página de entrada (index.asp), la página de finalización de entrada (add.asp), la página de lista de artículos (ver .asp), página de contenido del artículo (display.asp), las tres primeras son páginas que no necesitan ser procesadas. Mirando la imagen a continuación, creo que un pájaro común puede hacerlo. La clave es el último display.asp. Todos los códigos para paginación están aquí.
Paso 2:
Haga algunos trucos en la parte de datos dinámicos del cuerpo del artículo. El siguiente es el código y la explicación:
<%.
'Aquí necesitamos procesar los parámetros de paginación recibidos para mostrar el contenido de qué página
'Las siguientes dos oraciones permiten que la variable pageNum tome el valor de la primera página si no se pasa ningún parámetro de página: 0
Si Solicitud("página")="" Entonces
número de página=0
'De lo contrario, asigne el valor a la variable como parámetro en la página pasada para mostrar otras páginas.
Demás
número de página=Solicitud("página")
terminar si
%>
<%
'Si agrega código UBB de ejecución opcional, puede agregar el siguiente código
'rs("NoUBB") es un campo en la base de datos sobre cómo deshabilitar UBB, 0 significa deshabilitado, 1 significa ejecutado
Si rs("NoUBB")=0 entonces
'Para evitar errores al conectarse con el contenido del artículo, use la función Reemplazar para agregar un ancho completo antes y después del código de paginación "|||"
'rs("content") es el campo de texto en la base de datos, agregue UBB aquí o deshabilite UBB
Contenido=Reemplazar((unHTML(rs("contenido"))),"|||"," ||| ")
De lo contrario, rs("NoUBB")=1 entonces
Contenido=Reemplazar((ubb(rs("contenido"))),"|||"," ||| ")
terminar si
%>
<%
'Aquí está la clave
'Usamos la función de división para extraer el artículo en secciones y almacenarlas en el contenido variable.
ContentStr=dividir(Contenido,"|||")
'Según la variable que se va a mostrar recién obtenida del parámetro URL, la página se mostrará en un bucle
Para i = número de página a número de página
%>
<!--Este será el texto del artículo-->
<%=ContentStr %>
<% Siguiente %>
</td>
</tr>
<tr>
<td height="30" class="ClassName">Este artículo se divide en
<%
'En el área de paginación, use ubound (ContentStr) para obtener en cuántas páginas está dividido el artículo. Tenga en cuenta que comienza desde 0, por lo que el número total de páginas debe agregarse en 1.
For p = 0 to ubound(ContentStr)
'El enlace sigue siendo esta página, pero se agrega un parámetro de paginación después del parámetro de ID del artículo: página
%>
<a href="display.asp?ID=<%=rsquest("ID")%>&page=<%=p%>" class=""><%=p+1%></a>
<% Siguiente %> página
Es muy simple. Si elimina todos los comentarios, solo serán 15 líneas de código, pero aún debe procesarse para que pueda tener las funciones de resaltar la página anterior, la página siguiente y la página actual. .
Se ha probado, a menos que aparezca el salto de página en el artículo, no todos los tipos saldrán mal. Por supuesto, puede aumentar el número de |||, por ejemplo: ||||||, y luego seis "|". o menos aparecen en el artículo. Todo está bien, pero si hay más de seis, se dividirá en páginas. Simplemente elija un buen salto de página.