Foros del Web » Programando para Internet » ASP Clásico »

Problema con paginacion con base sql

Estas en el tema de Problema con paginacion con base sql en el foro de ASP Clásico en Foros del Web. Hola a todos. He paginado varias veces en asp con resultados obtenidos de una base da datos .mdb (access). Ahora me estoy actualizando y migre ...
  #1 (permalink)  
Antiguo 22/05/2002, 14:39
Avatar de Juansan  
Fecha de Ingreso: abril-2001
Mensajes: 203
Antigüedad: 23 años, 1 mes
Puntos: 0
Problema con paginacion con base sql

Hola a todos.
He paginado varias veces en asp con resultados obtenidos de una base da datos .mdb (access). Ahora me estoy actualizando y migre una de esas bases a sql2000 y al querer paginar, me muestra los enlaces a las distintas paginas pero el resultado es siempre el mismo, es decir, el de la pagina 1.
Use el paginador publicado por aspfacil y con el mdb anda bien pero no con sql.
El problema esta con los cursores y cerrojos al ejecutar la consulta. Para el mdb, uso este: rs.Open SQL, oConn, 1, 2 pero ese mismo consultando en sql devuelve como cantidad de registros -1.
Ahora bien, cambio a rs.Open SQL, oConn, 3, 1 y me devuelve el recordcount correcto pero al hacer clic en el enlace a la siguiente pagina, el resultado es nuevamente la primer pagina.
Si a alguien le paso y lo pudo resolver, por favor avisenme y si es la primera vez que lo leen y tienen ganas de ayudarme, se los agradezco.

Saludos.
  #2 (permalink)  
Antiguo 22/05/2002, 16:00
 
Fecha de Ingreso: enero-2002
Ubicación: Yerba Buena - Tucumán
Mensajes: 259
Antigüedad: 22 años, 5 meses
Puntos: 0
Re: Problema con paginacion con base sql

Yo no conozco el componente que estas usando pero te paso el codigo que yo utilizo para realizar la paginación y si me funciona con cualquier base de datos, el código es el siguiente:

<%'p es la posicion de comienzo en el vector de registros
if Request.Querystring("ref") = "" then
p = 0
else
p = Cint(Request.Querystring("ref"))
end if

SQL = "SELECT id,fecha,obra,sala,precio,id_categoria FROM eventos WHERE Month(fecha) = Month(now()) AND id_categoria=" & rubro & " ORDER BY fecha"
'abrimos el recordset con tipo de cursor 3 para poder utilizar bookmarks y saber el nº total de registros
rs.Open SQL, cnn, 3, 1
total_registros = rs.RecordCount
banerror = 0
If total_registros > 0 then
rs.Move p
inicio = rs.Bookmark
mitabla = rs.GetRows(10,inicio)
else
banerror = 1
end if
rs.Close
set rs = Nothing
cnn.Close
set cnn = Nothing
id = 0
fecha = 1
obra = 2
sala = 3
precio = 4
id_categoria = 5
<table width=98%>
<%For i = 0 to Ubound(mitabla,2)%>
<tr>
<td>
<%=mitabla(obra,i)%>
</td>
<td>
<%=mitabla(sala,i)%>
</td>
</tr>
<%Next%>
</table>
<%If Ubound(mitabla,2)+1 < total_registros then

If (total_registros mod 10) = 0 then
nro_paginas = Cint(total_registros / 10)
else
nro_paginas = Cint(total_registros / 10) + 1
end if%>
<table>
<tr>
<td>
Página
<%For i=0 to nro_paginas-1%>
<%If p = i*10 then%>
<a href="bares.asp?ref=<%=i*10%>"> <font color=DarkOrange><u><%=i+1%></u></font></a>
<%else%>
<a href="bares.asp?ref=<%=i*10%>"> <%=i+1%></a>
<%end if%>
<%If i < nro_paginas-1 then
Response.Write(" | ")
end if
Next%>
</b></font>
</td> Continúa ....
  #3 (permalink)  
Antiguo 22/05/2002, 16:05
 
Fecha de Ingreso: enero-2002
Ubicación: Yerba Buena - Tucumán
Mensajes: 259
Antigüedad: 22 años, 5 meses
Puntos: 0
Re: Problema con paginacion con base sql

Código:
  <td align="right">
  <b>
   <%
	a = p + 10
	b = p - 10
	if (p = 0) and (Ubound(mitabla,2)+1 < total_registros) then%>
	<a href="pagina.asp?ref=<%=a%>" title="Mostrar los 10 siguientes" class="e">Siguientes >></a>
	<%end if
	if (p+10 < total_registros) and (p <> 0) then%>
	<a href="pagina.asp?ref=<%=b%>" title="Mostrar los 10 anteriores" class="e"><< Anteriores</a>
        <font size=2 color=white>  |  </font>
	<a href="pagina.asp?ref=<%=a%>" title="Mostrar los 10 siguientes" class="e">Siguientes >></a>
	<%elseif (p <> 0) then%>
	<a href="pagina.asp?ref=<%=b%>" title="Mostrar los 10 anteriores" class="e"><< Anteriores</a>
	<%end if%>
  </b>
  </td>
</tr>	  
</table>
<%end if%>
Se que está bastante complicado de entender pero copialo y tratá de darle forma. Te aseguro que funciona bastante bien. Cualquier problema que tengas me mandás un mail a [email protected]
Espero que te sirva de algo

Saludos ;)
  #4 (permalink)  
Antiguo 23/05/2002, 09:32
Avatar de Juansan  
Fecha de Ingreso: abril-2001
Mensajes: 203
Antigüedad: 23 años, 1 mes
Puntos: 0
Re: Problema con paginacion con base sql

Gracias, lo voy a probar.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:10.