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

No consigo que funcione esta paginacion

Estas en el tema de No consigo que funcione esta paginacion en el foro de ASP Clásico en Foros del Web. Saludos: Estoy intentando hacer una paginación de forma que aparezca para pasar de una pagina a otra el texto: "Ir a los próxsimos 4 resultados" ...
  #1 (permalink)  
Antiguo 25/07/2006, 11:22
 
Fecha de Ingreso: junio-2003
Ubicación: Santiago de Compostela
Mensajes: 603
Antigüedad: 20 años, 10 meses
Puntos: 0
No consigo que funcione esta paginacion

Saludos:
Estoy intentando hacer una paginación de forma que aparezca para pasar de una pagina a otra el texto: "Ir a los próxsimos 4 resultados"
En principio parece estar bien, pero cuando pulso sobre el link, aparentemente no recoge el valor que le paso por url para avanzar de pagina y me devuelve el error siguiente:

HTTP/1.1 404 No se encuentra el objeto

La DB es ACCESS.

Es obvio que algo falla, pero o es muy evidente o no se.... pero no consigo verlo.

Uso 2 recordset, el encargado de mostrar la información a paginar es RsCasas.

Lo que pretendo es listar de 4 en 4 los registros a dos columnas.
Por favor podrían intentar ver el código a ver si consiguen ver lo que yo no veo o indicarme algo que me sugiera donde buscar el error.
Gracias de antemano

------Código----
Código:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="css/estilos_web.css" rel="stylesheet" type="text/css">
<title>Bienvenido a Rustic Galicia</title></head>
</head>
<!--#include file="adovbs.asp" -->
<!--#include file="funciones.asp" -->
<body>
<%
'Abrimos el RsProvincias para recuperar las provincias que tienen casas
Set Conn= Server.CreateObject("ADODB.Connection")
Set Command= Server.CreateObject("ADODB.Command")
Conn.open "DSN=rusticgalicia.com"
Command.ActiveConnection=Conn 
Command.CommandType=adCmdText 
Command.CommandText= "SELECT DISTINCT provincia FROM casas"
Set RsProvincias=Command.Execute () 
 
'Abrimos RsCasas en la tabla casas
set Conn1= Server.CreateObject("ADODB.Connection") 
Set RsCasas=Server.CreateObject("ADODB.Recordset")
Conn1.ConnectionString = "DSN=rusticgalicia.com"
Conn1.open
sqlstring2= "SELECT * FROM casas order by id"
RsCasas.open sqlstring2, conn1, 3, 3
 
'Variables para la paginacion
Dim PaginaActual  ' en qué pagina estamos
Dim PaginasTotales  ' cuántas páginas tenemos
Dim TamPagina   ' cuantos registros por pagina
Dim CuantosRegistros ' la cuenta que os he mencionado
 
'Modificar aqui para cambiar el numero de registros por pagina
TamPagina=6
 
'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
response.Write "<br>Pagina vale= " & pagina
response.write "<br> PaginaActual vale= " & PaginaActual
RsCasas.PageSize=TamPagina
RsCasas.CacheSize=TamPagina
'Cuento las páginas
PaginasTotales=RsCasas.PageCount
response.write "<br> TamPagina vale= " & TamPagina
'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
RsCasas.AbsolutePage=PaginaActual
response.write "<br> PaginasTotales vale= " & PaginasTotales 
 
'Añadimos la cabecera de la página
cabecera
%>
<table class="cuerpo" align="center" cellspacing="0" cellpadding="0">
  <tr>
    <td width="10">&nbsp;</td>
    <td colspan="2">&nbsp;</td>
    <td width="376">&nbsp;</td>
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td colspan="2" class="provincias">
 <%
 RsProvincias.movefirst
 do while not RsProvincias.eof 
  response.write RsProvincias("provincia") & "  |  "
  RsProvincias.movenext
 loop
 %> </td>
    <td class="provincias"> <%if PaginaActual > 1 then
  Response.Write("<A HREF=catalogo.asp?pagina="& PaginaActual-1 &" >Ir a los 4 Anteriores</A>")
 end if
 if PaginaActual < PaginasTotales then
  Response.Write("<A HREF=catalogo.asp?pagina=" & PaginaActual+1 & ">Ir a los 4 Siguientes</A>")
 end if%></td>
 
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td colspan="2">&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
 <%
 
 RsCasas.movefirst
 CuantosRegistros=0
 Do while not RsCasas.eof and CuantosRegistros < TamPagina
  %>
  <tr>
    <td>&nbsp;</td>
    <td width="350">
 <table class="catalogo" cellspacing="0" cellpadding="0">
      <tr>
        <td width="22" rowspan="6"><img src="images/fondos/informacion.jpg" width="26" height="105"></td>
        <td width="244"></td>
        <td width="134" rowspan="6"><img src="<%=RsCasas("imagen1")%>" width="<%=RsCasas("imagen1ancho")%>" height="<%=RsCasas("imagen1alto")%>"></td>
      </tr>
      <tr>
        <td class="datoscasas">REFERENCIA: <%=RsCasas("referencia")%></td>
        </tr>
      <tr>
        <td class="datoscasas"><%=RsCasas("poblacion")%></td>
        </tr>
      <tr>
        <td class="datoscasas"><%=RsCasas("superficievivienda")%></td>
        </tr>
      <tr>
        <td class="datoscasas"><%=RsCasas("superficiefinca")%></td>
        </tr>
      <tr>
        <td class="datoscasas"><%=RsCasas("precio")%> &euro; </td>
        </tr>
    </table> </td>
 
 
 
 <td width="6">&nbsp;</td>
 
 
 <td align="right">
 <%
 CuantosRegistros=CuantosRegistros+1
 RsCasas.movenext
 if not RsCasas.eof and CuantosRegistros < TamPagina then%> 
 <table class="catalogo" cellspacing="0" cellpadding="0">
      <tr>
        <td width="22" rowspan="6"><img src="images/fondos/informacion.jpg" width="26" height="105"></td>
        <td width="244"></td>
        <td width="134" rowspan="6"><img src="<%=RsCasas("imagen1")%>" width="<%=RsCasas("imagen1ancho")%>" height="<%=RsCasas("imagen1alto")%>"></td>
      </tr>
      <tr>
        <td class="datoscasas">REFERENCIA: <%=RsCasas("referencia")%></td>
        </tr>
      <tr>
        <td class="datoscasas"><%=RsCasas("poblacion")%></td>
        </tr>
      <tr>
        <td class="datoscasas"><%=RsCasas("superficievivienda")%></td>
        </tr>
      <tr>
        <td class="datoscasas"><%=RsCasas("superficiefinca")%></td>
        </tr>
      <tr>
        <td class="datoscasas"><%=RsCasas("precio")%> &euro; </td>
        </tr>
    </table></td>
    <td width="10">&nbsp;</td>
  </tr>
  <tr>
 <td>&nbsp;</td>
 <td>&nbsp;</td>
 <td>&nbsp;</td>
 </tr>
 
  <%CuantosRegistros=CuantosRegistros+1
  RsCasas.movenext
 End if  
  Loop%>
</table>
<%RsProvincias.close
RsCasas=close
Conn.close
Conn1.close %>
</body>
</html>
__________________

Espero haber aprendido algo de tí.
A mi padre.

Última edición por ciberpata; 25/07/2006 a las 11:36
  #2 (permalink)  
Antiguo 25/07/2006, 11:31
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 23 años, 2 meses
Puntos: 535
Cita:
HTTP/1.1 404
Man, eso es que no encuentra la página! estás seguro que existe la página del enlace? (catalogo.asp)

Por cierto, ¿qué es lo que quisiste hacer con la primer línea?
Cita:
<<A href="mailto:%@LANGUAGE="VBSCRIPT">%@LANGUAGE="VBS CRIPT" CODEPAGE="1252"%>
Eso no tiene razón de ser!
__________________
...___...
  #3 (permalink)  
Antiguo 25/07/2006, 11:38
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 4 meses
Puntos: 98
Claro que tiene razón de ser, es para el envío de mails al IIS solo si está interpretando VB

Nah, broma, yo creo que quizás no está así su código, tal vez fue al pegarlo aquí.

Saludos
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #4 (permalink)  
Antiguo 25/07/2006, 11:38
 
Fecha de Ingreso: junio-2003
Ubicación: Santiago de Compostela
Mensajes: 603
Antigüedad: 20 años, 10 meses
Puntos: 0
Perdon se me fue el dedo al copiar.....
ya está corregido lo de la primera linea.

La pagina se llama catalogo.asp con lo que la primera vez que se carga no recoge ningun valor para la variable pagina. Luego el valor va cambiando hacia adleante o hacia atras.

Según me parece a mí no consigue recoger el contenido de la variable pagina
__________________

Espero haber aprendido algo de tí.
A mi padre.
  #5 (permalink)  
Antiguo 25/07/2006, 11:45
Avatar de El_Metallick  
Fecha de Ingreso: noviembre-2002
Ubicación: Santiago, Chile
Mensajes: 1.718
Antigüedad: 21 años, 5 meses
Puntos: 16
copiar la URL de la pagina que te da ese error... saludos
__________________
Haz la guerra en la cama y el amor donde se te de la gana...
El tiempo es el mejor maestro, lo único malo es que te mata...¡¡Aprovecha tu tiempo!!
  #6 (permalink)  
Antiguo 25/07/2006, 14:42
 
Fecha de Ingreso: junio-2003
Ubicación: Santiago de Compostela
Mensajes: 603
Antigüedad: 20 años, 10 meses
Puntos: 0
Lo estoy probando en local:
la url sería:
http://localhost:7000/catalogo.asp

una vez que que pincho sobre el link para avanzar pagina sería:
http://localhost:7000/catalogo.asp?pagina=2
Aquí es donde me da error.
__________________

Espero haber aprendido algo de tí.
A mi padre.
  #7 (permalink)  
Antiguo 25/07/2006, 17:56
Avatar de ElAprendiz  
Fecha de Ingreso: enero-2002
Ubicación: Maipu, Chile
Mensajes: 3.706
Antigüedad: 22 años, 3 meses
Puntos: 2
no tendras algun response.redirect por ahi?
__________________
Manual de ASP Avanzado ;-)
  #8 (permalink)  
Antiguo 26/07/2006, 00:14
 
Fecha de Ingreso: junio-2003
Ubicación: Santiago de Compostela
Mensajes: 603
Antigüedad: 20 años, 10 meses
Puntos: 0
No, no tengo ningun response.redirect
__________________

Espero haber aprendido algo de tí.
A mi padre.
  #9 (permalink)  
Antiguo 26/07/2006, 11:50
 
Fecha de Ingreso: abril-2004
Ubicación: México D.F.
Mensajes: 1.724
Antigüedad: 20 años
Puntos: 4
Ya probaste de esta manera :

RsCasas.PageSize=TamPagina
RsCasas.CacheSize=TamPagina
RsCasas.cursorlocation=adUseClient

sqlstring2= "SELECT * FROM casas order by id"
RsCasas.open sqlstring2, conn1, 3, 3

PaginasTotales=RsCasas.pagecount
total_registros=RsCasas.recordcount

Última edición por orharo2003; 26/07/2006 a las 11:57
  #10 (permalink)  
Antiguo 26/07/2006, 15:08
 
Fecha de Ingreso: junio-2003
Ubicación: Santiago de Compostela
Mensajes: 603
Antigüedad: 20 años, 10 meses
Puntos: 0
Ya he conseguido que me funcione el link: "4 anteriores" y "4 siguientes", pero aunque me muestra y recoge bien el valor de la variable pagina no me avanza de 4 en 4 registros en RsCasas:

El código queda así:
Código:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="css/estilos_web.css" rel="stylesheet" type="text/css">
<title>Bienvenido a Rustic Galicia</title></head>
</head>

<!--#include file="adovbs.asp" -->
<!--#include file="funciones.asp" -->
<body>

<%
'Abrimos el RsProvincias para recuperar las provincias que tienen casas
Set Conn= Server.CreateObject("ADODB.Connection")
Set Command= Server.CreateObject("ADODB.Command")
Conn.open "DSN=rusticgalicia.com"
Command.ActiveConnection=Conn 
Command.CommandType=adCmdText 
Command.CommandText= "SELECT DISTINCT provincia FROM casas"
Set RsProvincias=Command.Execute () 


'Abrimos RsCasas en la tabla casas
set Conn1= Server.CreateObject("ADODB.Connection")    
Set RsCasas=Server.CreateObject("ADODB.Recordset")
Conn1.ConnectionString = "DSN=rusticgalicia.com"
rscasas.cursorlocation=aduseclient
Conn1.open
sqlstring2= "SELECT * FROM casas order by id"
RsCasas.open sqlstring2, conn1, 3, 3


'Variables para la paginacion
Dim PaginaActual        ' en qué pagina estamos

Dim PaginasTotales        ' cuántas páginas tenemos

Dim TamPagina            ' cuantos registros por pagina

Dim CuantosRegistros    ' la cuenta que os he mencionado


'Modificar aqui para cambiar el numero de registros por pagina
TamPagina=4

'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

response.write "<br> PaginaActual vale= " & PaginaActual

RsCasas.PageSize=TamPagina
RsCasas.CacheSize=TamPagina

'Cuento las páginas
PaginasTotales=RsCasas.PageCount

response.write "<br> TamPagina vale= " & TamPagina

'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

RsCasas.AbsolutePage=PaginaActual

response.write "<br> PaginasTotales vale= " & PaginasTotales    


'Añadimos la cabecera de la página
cabecera
%>

<table class="cuerpo" align="center" cellspacing="0" cellpadding="0">
  <tr>
    <td width="10">&nbsp;</td>
    <td colspan="2">&nbsp;</td>
    <td width="376">&nbsp;</td>
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td colspan="2" class="provincias">
    <%
    RsProvincias.movefirst
    do while not RsProvincias.eof    
        response.write RsProvincias("provincia") & "  |  "
        RsProvincias.movenext
    loop
    %>    
    </td>
    
    <td class="provincias"> 
    <%if PaginaActual > 1 then%>
        <a href="catalago.asp?pagina=<%=(cint(PaginaActual)-1)%>">4 Anteriores</a>
    <%end if
    
    if PaginaActual < PaginasTotales then%>
        <a href="catalago.asp?pagina=<%=(cint(PaginaActual)+1)%>">4 siguientes</a>
    <%end if%>    </td>
     
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td colspan="2">&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
    <%
    
    CuantosRegistros=0
    RsCasas.movefirst
    
    Do while not RsCasas.eof and CuantosRegistros < TamPagina
  %>
  <tr>
    <td>&nbsp;</td>
    <td width="350">
    <table class="catalogo" cellspacing="0" cellpadding="0">
      <tr>
        <td width="22" rowspan="6"><img src="images/fondos/informacion.jpg" width="26" height="105"></td>
        <td width="244"></td>
        <td width="134" rowspan="6"><img src="<%=RsCasas("imagen1")%>" width="<%=RsCasas("imagen1ancho")%>" height="<%=RsCasas("imagen1alto")%>"></td>
      </tr>
      <tr>
        <td class="datoscasas">REFERENCIA: <%=RsCasas("referencia")%></td>
        </tr>
      <tr>
        <td class="datoscasas"><%=RsCasas("poblacion")%></td>
        </tr>
      <tr>
        <td class="datoscasas"><%=RsCasas("superficievivienda")%></td>
        </tr>
      <tr>
        <td class="datoscasas"><%=RsCasas("superficiefinca")%></td>
        </tr>
      <tr>
        <td class="datoscasas"><%=RsCasas("precio")%> &euro; </td>
        </tr>
    </table>    </td>
    
    
    
    <td width="6">&nbsp;</td>
    
    
    <td align="right">
    <%
    CuantosRegistros=CuantosRegistros+1
    response.write "cuantosregistros vale= " & cuantosregistros & "<br>"

    RsCasas.movenext
    if not RsCasas.eof and CuantosRegistros < TamPagina then%>    
    <table class="catalogo" cellspacing="0" cellpadding="0">
      <tr>
        <td width="22" rowspan="6"><img src="images/fondos/informacion.jpg" width="26" height="105"></td>
        <td width="244"></td>
        <td width="134" rowspan="6"><img src="<%=RsCasas("imagen1")%>" width="<%=RsCasas("imagen1ancho")%>" height="<%=RsCasas("imagen1alto")%>"></td>
      </tr>
      <tr>
        <td class="datoscasas">REFERENCIA: <%=RsCasas("referencia")%></td>
        </tr>
      <tr>
        <td class="datoscasas"><%=RsCasas("poblacion")%></td>
        </tr>
      <tr>
        <td class="datoscasas"><%=RsCasas("superficievivienda")%></td>
        </tr>
      <tr>
        <td class="datoscasas"><%=RsCasas("superficiefinca")%></td>
        </tr>
      <tr>
        <td class="datoscasas"><%=RsCasas("precio")%> &euro; </td>
        </tr>
    </table></td>
    <td width="10">&nbsp;</td>
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    </tr>
    
  <%CuantosRegistros=CuantosRegistros+1
  RsCasas.movenext
    End if  
  Loop%>
</table>

<%RsProvincias.close
RsCasas=close
Conn.close
Conn1.close    %>
</body>
</html>
__________________

Espero haber aprendido algo de tí.
A mi padre.
  #11 (permalink)  
Antiguo 28/07/2006, 00:26
 
Fecha de Ingreso: junio-2003
Ubicación: Santiago de Compostela
Mensajes: 603
Antigüedad: 20 años, 10 meses
Puntos: 0
Ayuda please
__________________

Espero haber aprendido algo de tí.
A mi padre.
  #12 (permalink)  
Antiguo 28/07/2006, 14:27
Avatar de ElAprendiz  
Fecha de Ingreso: enero-2002
Ubicación: Maipu, Chile
Mensajes: 3.706
Antigüedad: 22 años, 3 meses
Puntos: 2
prueba a cambia esto:

RsCasas.open sqlstring2, conn1, 1, 2



saludos
__________________
Manual de ASP Avanzado ;-)
  #13 (permalink)  
Antiguo 29/07/2006, 04:49
 
Fecha de Ingreso: junio-2003
Ubicación: Santiago de Compostela
Mensajes: 603
Antigüedad: 20 años, 10 meses
Puntos: 0
Ya consegui que funcione.
Ahora lo que me sobraba era un:
rsCasas.movefirst.
ya que siempre me iba al principio
Gracias a todos
__________________

Espero haber aprendido algo de tí.
A mi padre.

Última edición por ciberpata; 29/07/2006 a las 06:10
  #14 (permalink)  
Antiguo 29/07/2006, 08:55
 
Fecha de Ingreso: abril-2004
Ubicación: México D.F.
Mensajes: 1.724
Antigüedad: 20 años
Puntos: 4
q bueno q ya te funciono !!!
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 06:33.