| |||
![]() Hola...estoy tratando de realizar una paginacion en asp, pero solo me muestra la 1ra pag...resulta que muestra una tabla que se genera a traves de una consulta, el usuario introduce un valor, se genera una consulta en mi bd y muestra una tabla, suponiendo que el resultado lo muestra en 4 pags, en la primera pag me muestra mi tabla y sus valores, pero al ir a las otras me dice que no hay registros...creo que como el resultado depende de las variables que introduce el usuario para las otras pags no las guarda y x ello no me muestra el resto de los resultados...estoy en lo correcto...y si es asi, como puedo evitar esto?...gracias!!! |
| |||
<HTML> <HEAD><TITLE>Paginación :: SoloASP.com.ar</TITLE></HEAD> <BODY BGCOLOR="#EEDDEE"> <% 'ESTOS REQUEST.FORM SON LOS NOMBRES DE LOS CAMPOS DE FORM DE LA PAGINA ANTERIOR if not isdate(Request.Form("mes1")) and isdate(Request.Form("year1")) and isdate(Request.Form("year2")) then Response.Redirect "InicioPag_SistemPesado_Mes.asp" end if vmes1= (Request.Form("mes1")) vyear1= (Request.Form("year1")) vFecha1= vmes1 vFecha2= "20" + vyear1 Dim mostrar 'cantidad de registros a mostrar por página Dim cant_paginas 'cantidad de páginas que recibimos Dim pagina_actual 'La página que mostramos Dim registro_mostrado 'Contador utilizado para mostrar las páginas Dim I 'Variable Loop mostrar = 5 ' Pueden modificar este número para cambiar la cantidad de registros por página ' IF para saber que página mostrar If Request.QueryString("page") = "" Then pagina_actual = 1 Else pagina_actual = CInt(Request.QueryString("page")) End If strsql = "SELECT CODE, NAME, FECHCM, FECHCY FROM ESCANER1 WHERE FECHCM ='" & vFecha1 & "' AND FECHCY ='" & vFecha2 & "' AND (CODE > '0') AND (NAME > '0') ORDER BY CODE " ' Creamos la conexion a la base de datos Set oConn = Server.CreateObject("ADODB.Connection") oConn.Open "Driver={SQL Server};Server=MGEV;Database=Rssql;UID=sa;Password =sa;" ' Creamos el RecordSet y definimos la cantidad de registros a mostrar Set RS = Server.CreateObject("ADODB.Recordset") RS.PageSize = mostrar RS.CacheSize = mostrar ' Abrimos la tabla... RS.Open strSQL, oConn,3,1 'contamos las páginas que se formaron con la variable mostrar. cant_paginas = RS.PageCount ' Si el pedido de página cae afuera del rango, ' lo modificamos para que caiga adentro If pagina_actual > cant_paginas Then pagina_actual = cant_paginas If pagina_actual < 1 Then pagina_actual = 1 ' Si la cantidad de páginas da 0 es que no hay registros... por eso este IF If cant_paginas = 0 Then Response.Write "No hay registros..." Else ' Nos movemos a la página elegida RS.AbsolutePage = pagina_actual ' Mostramos el dato de que página estamos... %> <FONT SIZE="+1">Página <B><%= pagina_actual %></B> de <B><%= cant_paginas %></B></FONT> <% ' Espacios Response.Write "<BR><BR>" & vbCrLf 'iniciamos la tabla donde mostraremos todo Response.Write "<TABLE BORDER=""1"">" & vbCrLf ' Mostramos los titulos de las columnas... (pueden sacar ese FOR para eliminar eso) Response.Write vbTab & "<TR>" & vbCrLf For I = 0 To RS.Fields.Count - 1 Response.Write vbTab & vbTab & "<TD><B>" Response.Write RS.Fields(I).Name Response.Write "<B></TD>" & vbCrLf Next 'I Response.Write vbTab & "</TR>" & vbCrLf ' Hacemos el bucle mostrando los datos del registro registro_mostrado = 0 Do While registro_mostrado < mostrar And Not RS.EOF Response.Write vbTab & "<TR>" & vbCrLf For I = 0 To RS.Fields.Count - 1 Response.Write vbTab & vbTab & "<TD>" Response.Write RS.Fields(I) Response.Write "</TD>" & vbCrLf Next 'I Response.Write vbTab & "</TR>" & vbCrLf ' Sumamos 1 a los mostrados registro_mostrado = registro_mostrado + 1 ' Nos movemos al próximo registro... RS.MoveNext Loop 'listo... Response.Write "</TABLE>" & vbCrLf End If ' Cerramos y limpiamos... 'RS.Close 'Set RS = Nothing 'oConn.Close 'Set oConn = Nothing ' Ahora mostramos los enlaces a las otras páginas con el resto de los registros... If pagina_actual > 1 Then %> <a href="./pag.asp?eje=30&page=<%= pagina_actual - 1 %>">[<< Anterior]</a> <% End If ' mostramos la paginacion por numeros de página For I = 1 To cant_paginas If I = pagina_actual Then %> <%= I %> <% Else %> <a href="./pag.asp?eje=30&page=<%= I %>"><%= I %></a> <% End If Next 'I If pagina_actual < cant_paginas Then %> <a href="./pag.asp?eje=30&page=<%= pagina_actual + 1 %>">[Próximo >>]</a> <% End If 'Fin... %> </BODY> </HTML> |
| |||
duplico información...mas bien duplico mi peticion de ayuda...ya que no hay quien me responda o que me responda algo que me sirva...la verdad es que no sé si se puede hacer lo que menciono de la paginación!!! |
| |||
si duplique el mensaje xq de hecho desde ayer tengo la misma duda y nadie me contesta...sorry!!!...no volveré a hacerlo...solo espero que si alguien tiene una forma de resolver el problema que tengo con la paginacion la pueda compartir conmigo...gracias!!! |
| ||||
Esperemos no vuelvas a hacerlo. Por cierto, tus últimos 3 mensajes en este tema tienen las horas (de argentina) Cita: Eso se lo puede sancionar con intentar mantener deliberadamente un tema al tope del foro.17:04:38 17:05:46 17:09:26 Intentá no hacerlo. Gracias.
__________________ ...___... |
| |||
ok...gracias por los consejos...y es cierto, no por mandar 2 veces mi duda me van a responder mas rápido o me van a responder...agradezco los comentarios!!!...auque sigo sin resolver mi problema!!! |