Ver Mensaje Individual
  #1 (permalink)  
Antiguo 30/03/2007, 15:49
albatros2007
 
Fecha de Ingreso: marzo-2007
Mensajes: 4
Antigüedad: 18 años
Puntos: 0
problemas con paginar y alternar colores en base de datos

Hola tal vez me podrian ayudar, junte dos script alternar colores de registros y lo hace bien pero al paginar me respeta de diez en diez la paginacion pero me imprime todos los registros que estan por de bajo de esa pagina este es el codigo, gracias de antemano

<%
' Paginas en un recordset
'------------------------
' Carlos de la Orden Dijs
' [email protected]
'------------------------

Dim oConn, rs, SQL
Dim PaginaActual ' en qué pagina estamos
Dim PaginasTotales ' cuántas páginas tenemos
Dim TamPagina ' cuantos registros por pagina
Dim CuantosRegistros ' para imprimir solo el nº de registro por pagina que queramos

'MODIFICAR AQUI PARA CAMBIAR EL Nº DE REGISTRO POR PAGINA
TamPagina=10

'Leemos qué página mostrar. La primera vez será la inicial
if Request.Querystring("pagina")="" then
PaginaActual=1
else
PaginaActual=CInt(Request.Querystring("pagina"))
end if

set oConn=Server.CreateObject("ADODB.Connection")
set rs=Server.CreateObject("ADODB.Recordset")

' Conexión por OLEDB
oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source="&Server.MapPath("ejemplo.mdb")&";"
SQL="SELECT Id, Nombre, Ventas FROM Ventas;"

' Defino el tamaño de las páginas
rs.PageSize=TamPagina
rs.CacheSize=TamPagina

' Abro el recordset
rs.Open SQL, oConn, 1, 2

'Cuento las páginas
PaginasTotales=rs.PageCount

'Compruebo que la pagina actual está en el rango
if PaginaActual < 1 then
PaginaActual = 1
end if
if PaginaActual > PaginasTotales then
PaginaActual = PaginasTotales
end if

'Por si la consulta no devuelve registros!
if PaginasTotales=0 then

Response.Write("No se encontraron resultados.")

else

'Vamos a paginar
rs.AbsolutePage=PaginaActual
Response.Write("Pagina " & PaginaActual & " de " & PaginasTotales)

%>

<table width="760" bgcolor="#99CCCC" border>
<tr>
<td>
<font size="2"><b>Id</b></font>
</td>


<td>
<font size="2"><b>Nombre</b></font>
</td>

</td>
<td>
<font size="2"><b>Ventas</b></font>
</td>

</tr>



<%
CuantosRegistros=0
%>



<%
Dim no,color
no = "1"
color = "1"
%>

<% DO UNTIL rs.EOF and CuantosRegistros < TamPagina%>

<% IF color = "3" Then%>
<% color = "1"%>
<% END IF%>
<% IF color = "1" Then%>
<tr bgcolor="#339999">
<% ELSEIF color= "2" Then%>
<tr bgcolor="#99CCCC">
<% END IF%>

<td>
<font size="2"><% =rs.fields("Id").Value%></font>
</td>
<td>
<font size="2"><% =rs.fields("Nombre").Value%></font>
</td>
<td>
<font size="2"><% =rs.fields("Ventas").Value%></font>
</td></tr>

<% ' EN ESTA PARTE DEBERIA DE IR ESTA LINEA CuantosRegistros=CuantosRegistros+1%>


<% rs.MoveNext%>

<% no = no+1%>
<% color = color+1%>
<% LOOP%>
</TABLE>
<%
end if
rs.Close
oConn.Close
set rs=nothing
set oConn=nothing

'Muestro los enlaces
Response.Write("<hr>")
if PaginaActual > 1 then
Response.Write("<A HREF=rspaginar.asp?pagina="& PaginaActual-1& ">10 Anteriores</A>&nbsp;&nbsp;&nbsp;")
end if
if PaginaActual < PaginasTotales then
Response.Write("<A HREF=rspaginar.asp?pagina=" & PaginaActual+1 &">10 Siguientes</A>")
end if


%>