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

Siguiente pagina en paginacion

Estas en el tema de Siguiente pagina en paginacion en el foro de ASP Clásico en Foros del Web. Tengo el siguiente problema con la paginación de unos registros: ~~~~~~~~~~~~~~~~~~~~ 'Muestro los enlaces Response.Write("<br><hr>") if PaginaActual > 1 then Response.Write(" <A HREF=visitados_por.asp?pagina="&PaginaActual-1&">10 Anteriores</A>&nbsp;&nbsp;&nbsp;") end ...
  #1 (permalink)  
Antiguo 11/04/2003, 18:37
Avatar de Fr@Nc3$c0  
Fecha de Ingreso: abril-2002
Ubicación: Barcelona (Spain)
Mensajes: 710
Antigüedad: 22 años, 2 meses
Puntos: 1
Siguiente pagina en paginacion

Tengo el siguiente problema con la paginación de unos registros:

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

Es la parte final, los registros de la primera pagina son correctos y salen perfectamente, el problema es cuando le doy a "10 siguientes" la cual me dice que la pagina no existe y realmente si existe.
Lo que no me detecta bien es el paso por url la variable o no se.
Porque puede ser?
Quieren el codigo entero?

gracias de antemano.
  #2 (permalink)  
Antiguo 11/04/2003, 19:07
Avatar de ElAprendiz  
Fecha de Ingreso: enero-2002
Ubicación: Maipu, Chile
Mensajes: 3.706
Antigüedad: 22 años, 4 meses
Puntos: 2
este problema lo he visto muchas veces con esta paginacion en el foro y es que muchos olvidan volver a recoger la variable "pagina". espero sea eso..sino pon el codigo completo


Un Saludo






Saludos
__________________
Manual de ASP Avanzado ;-)
  #3 (permalink)  
Antiguo 11/04/2003, 19:10
Avatar de Fr@Nc3$c0  
Fecha de Ingreso: abril-2002
Ubicación: Barcelona (Spain)
Mensajes: 710
Antigüedad: 22 años, 2 meses
Puntos: 1
Te posteo el código:

<%
Dim Conn, RS, SQLQuery1
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

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 Conn = Server.CreateObject( "ADODB.Connection" )
Set RS = Server.CreateObject( "ADODB.Recordset" )
Conn.Open Application( "ConexionContadores" )
SQLQuery1 = " SELECT id, ip, software, lenguaje, fecha, hora FROM visitantes ORDER BY id desc "

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

' Abro el recordset
RS.Open SQLQuery1, Conn, 1, 1

'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)
Response.Write("<br><br>")
%>
<p align="center"><font color="#000000" size="4" face="Verdana, Arial, Helvetica, sans-serif" class="T&iacute;tulo1">&Uacute;ltimas
visitas recibidas</font></p>
<table border=1 align="center" cellpadding=3 cellspacing=0 bordercolor="#000000" bgcolor="#ccccc">
<tr bordercolor="#333333">
<td bgcolor="#F0F0F0"> <div align="center"><strong><font face="Verdana, Arial, Helvetica, sans-serif">Visitas</font></strong></div></td>
<td bgcolor="#F0F0F0"> <div align="center"><strong><font face="Verdana, Arial, Helvetica, sans-serif">Dirección
IP</font></strong></div></td>
<td bgcolor="#F0F0F0"> <div align="center"><strong><font face="Verdana, Arial, Helvetica, sans-serif">Navegador</font></strong></div></td>
<td bgcolor="#F0F0F0"><div align="center"><strong><font face="Verdana, Arial, Helvetica, sans-serif">Idioma</font></strong></div></td>
<td bgcolor="#F0F0F0"><div align="center"><strong><font face="Verdana, Arial, Helvetica, sans-serif">Fecha</font></strong></div></td>
<td bgcolor="#F0F0F0"><div align="center"><strong><font face="Verdana, Arial, Helvetica, sans-serif">Hora</font></strong></div></td>
</tr>
<%
CuantosRegistros = 0
Do while not RS.EOF and CuantosRegistros < TamPagina
i = i + 1
%>
<tr bordercolor="#333333" bgcolor="#FFFFFF">
<td><div align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><small><%=i%></small></font></div></td>
<td><div align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><small><%=RS.Fields("IP")%></small></font></div></td>
<td><div align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><small><%=RS.Fields("Software")%></small></font></div></td>
<td><div align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><small><%=RS.Fields("Lenguaje")%></small></font></div></td>
<td><div align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><small><%=RS.Fields("Fecha")%></small></font></div></td>
<td><div align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><small><%=RS.Fields("Hora")%></small></font></div></td>
</tr>
<%
CuantosRegistros = CuantosRegistros + 1
RS.MoveNext
loop
%>
</table>
<%
end if

RS.Close
Conn.Close
set RS = nothing
set Conn = nothing

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


Espero encuentren el fallo.

El link de los 10 siguientes al pasar el mouse por encima muestra:

visitado_por.asp?pagina=2

en tal caso sería correcto pero no pasa del todo bien la variable.

Gracias Aprendiz.
__________________
Francesc Mula Calleja
Hay mucho por ver todavía...
  #4 (permalink)  
Antiguo 11/04/2003, 19:55
Avatar de Fr@Nc3$c0  
Fecha de Ingreso: abril-2002
Ubicación: Barcelona (Spain)
Mensajes: 710
Antigüedad: 22 años, 2 meses
Puntos: 1
El problema no lo encuentro, pero RESUMO:

Tengo una variable que la paso por link a la siguiente pagina, ésta esta pasada correctamente, pero al acceder a ella dice que no existe.

<a href="XXX.as?pagina= <%=&siguiente& %>"</a>

En la web se muestra el link correcto, pulso y TA CHAN:

The page cannot be found
The page you are looking for might have been removed, had its name changed, or is temporarily unavailable.

--------------------------------------------------------------------------------

El link mostraba

XXX.asp?pagina=2

Que puede fallar?
__________________
Francesc Mula Calleja
Hay mucho por ver todavía...
  #5 (permalink)  
Antiguo 13/04/2003, 17:25
Avatar de ElAprendiz  
Fecha de Ingreso: enero-2002
Ubicación: Maipu, Chile
Mensajes: 3.706
Antigüedad: 22 años, 4 meses
Puntos: 2
mira yo utlizo el mismo codigo para paginar y no lo unico diferente que encontre fue esto
' Abro el recordset
RS.Open SQLQuery1, Conn, 1, 1

RS.Open SQLQuery1, Conn, 1, 2

si no es eso
1. estas seguro que tu pagina se llama visitado_por.asp
2. pues cuando me pasa algo asi lo que hago es no enviarle todo y asi voy quitando cosas hasta encontrar donde se cae..jeje

pues intentar linkear pero sin enviar la variable a ver que pasa si se cae significa que ya no es problema de codigo..

saludos
__________________
Manual de ASP Avanzado ;-)
  #6 (permalink)  
Antiguo 13/04/2003, 17:45
Avatar de Fr@Nc3$c0  
Fecha de Ingreso: abril-2002
Ubicación: Barcelona (Spain)
Mensajes: 710
Antigüedad: 22 años, 2 meses
Puntos: 1
Gracias por contestar ElAprendiz...
La verdad es que me comí tanto la cabeza que lo solucioné de una manera muy sencilla, a que no sabes cual?

Tras la prueba que hice quedó claro que para pasar variables por URL no se puede utilizar nombres en las paginas que contengan carácteres como _ _ _ (visitados_por.asp)

Cambie el nombre de la pagina por visitantes.asp y funcionó correctamente.

Saludos!
__________________
Francesc Mula Calleja
Hay mucho por ver todavía...
  #7 (permalink)  
Antiguo 13/04/2003, 20:35
Avatar de ElAprendiz  
Fecha de Ingreso: enero-2002
Ubicación: Maipu, Chile
Mensajes: 3.706
Antigüedad: 22 años, 4 meses
Puntos: 2
que bueno!

pero me dejaste metido con eso del _


mmhh
__________________
Manual de ASP Avanzado ;-)
  #8 (permalink)  
Antiguo 13/04/2003, 20:42
Avatar de MsTech.DotNet  
Fecha de Ingreso: marzo-2003
Ubicación: Maracay - Edo. Aragua
Mensajes: 605
Antigüedad: 21 años, 2 meses
Puntos: 0
Jajajaja la verdad que esta raro no??? porque no funciona poner un underscore en el nombre de una pagina asp para pasar parametros y variables por url???

Ta raro..!!!

Jajajajaja

Saludos...
__________________
Ing. Javier Ugalde
Desarrollador de Aplicaciones Web / Windows
Director de Desarrollos Web
Ing. en Información
Email: [email protected]
Telf. Hab: +[58] - (243) - 232.02.06
Telf. Cel: +[58] - (414) - 455.26.80
  #9 (permalink)  
Antiguo 13/04/2003, 20:44
Avatar de Fr@Nc3$c0  
Fecha de Ingreso: abril-2002
Ubicación: Barcelona (Spain)
Mensajes: 710
Antigüedad: 22 años, 2 meses
Puntos: 1
Ya ven amigos, tal como leen

Si dudan de mi, hagan la prueba... estuve 2 días hasta que me dí cuenta .


Saludos.
__________________
Francesc Mula Calleja
Hay mucho por ver todavía...
  #10 (permalink)  
Antiguo 13/04/2003, 21:12
Avatar de ElAprendiz  
Fecha de Ingreso: enero-2002
Ubicación: Maipu, Chile
Mensajes: 3.706
Antigüedad: 22 años, 4 meses
Puntos: 2
jajaj

tas mal amigo pues como te comente yo utilizo la misma paginacion en una pagina llamada buscar_art.asp y funciona a la perfeccion.

debe ser por otra razon..en fin
__________________
Manual de ASP Avanzado ;-)
  #11 (permalink)  
Antiguo 13/04/2003, 21:25
Avatar de Fr@Nc3$c0  
Fecha de Ingreso: abril-2002
Ubicación: Barcelona (Spain)
Mensajes: 710
Antigüedad: 22 años, 2 meses
Puntos: 1
pues no lo entiendo, fué cambiar eso y funcionar :D

asi queda :D

Saludos!
__________________
Francesc Mula Calleja
Hay mucho por ver todavía...
  #12 (permalink)  
Antiguo 06/05/2003, 11:19
 
Fecha de Ingreso: julio-2002
Mensajes: 219
Antigüedad: 21 años, 11 meses
Puntos: 0
Hola.

Me imagino que el problema está aquí.

Cita:
Response.Write(" <A HREF=visitados_por.asp?pagina="&PaginaActual-1&">10 Anteriores</A> ")
Debería ser
Response.Write(" <A HREF=% visitados_por.asp?pagina="&PaginaActual-1&%">10 Anteriores</A> ")

DONDE % es el caracter especial para imprimir las comillas o la comilla simple. El cual no conozco, pero se que existe.


De esta manera se pasa completamente al URL todo lo que queremos.

Saludos.

Última edición por dagui; 06/05/2003 a las 11:22
  #13 (permalink)  
Antiguo 06/05/2003, 11:58
Avatar de Fr@Nc3$c0  
Fecha de Ingreso: abril-2002
Ubicación: Barcelona (Spain)
Mensajes: 710
Antigüedad: 22 años, 2 meses
Puntos: 1
Madre mia, este tema ya estaba olvidado jejeje...
Ya lo solucioné en su día , volví a crear la página con el recordset, aunque después la borre y la hize en getrow! jeje, en fín.
Gracias por el interés.
__________________
Francesc Mula Calleja
Hay mucho por ver todavía...
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 00:27.