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

Hola a todos

Estas en el tema de Hola a todos en el foro de ASP Clásico en Foros del Web. Alguien puede indicarme como pagino los resultados de una consulta a una tabla eventos en la base de datos? listo los eventos pero hay que ...
  #1 (permalink)  
Antiguo 22/06/2002, 05:13
 
Fecha de Ingreso: mayo-2002
Mensajes: 91
Antigüedad: 22 años
Puntos: 0
Hola a todos

Alguien puede indicarme como pagino los resultados de una consulta a una tabla eventos en la base de datos?

listo los eventos pero hay que paginarlos porque son muchos y debo distribuirlos paginandolos para que se vea mejor

Disculpen mi ignofancia, y de antemano agradezco la ayudita :roto:



  #2 (permalink)  
Antiguo 22/06/2002, 09:28
 
Fecha de Ingreso: noviembre-2001
Mensajes: 117
Antigüedad: 22 años, 6 meses
Puntos: 0
Re: Hola a todos

<%
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 Username, Password, Nombre, Email, Web, Direccion, Telefono, Especialidad, Pais, Comentarios FROM tabla ORDER BY nombre"

' Creamos la conexion a la base de datos
Set oConn = Server.CreateObject("ADODB.Connection")

oConn.Open("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("\db\tubaseenaccess.mdb") )

' 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 en qué página estamos...
%>
<p class=dia2>Página <%= pagina_actual %> de <%= cant_paginas %></p>









más ...


<a href="http://www.canalpublicidad.com"><img border="0" src="http://www.canalpublicidad.com/images/banner_crystal_g.gif" width="468" height="60"></a>
  #3 (permalink)  
Antiguo 22/06/2002, 09:30
 
Fecha de Ingreso: noviembre-2001
Mensajes: 117
Antigüedad: 22 años, 6 meses
Puntos: 0
Re: Hola a todos

&lt;%


'iniciamos la tabla donde mostraremos todo
Response.Write &quot;&lt;TABLE BORDER=&quot;&quot;0&quot;&quot; class=dia2&gt;&quot;


' Hacemos el bucle mostrando los datos del registro

' Hacemos el bucle mostrando los datos del registro
registro_mostrado = 0
Do While registro_mostrado &lt; mostrar And Not RS.EOF



Response.Write(&quot;&lt;tr&gt;&lt;td class=diaviolin&gt;&lt;img border=0 src=archivo2.gif width=32 height=32&gt;&amp;nbsp;&quot; &amp; RS(&quot;Nombre&quot;) &amp; &quot;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign=top&gt;Especialidad:&amp;nbsp;&quot; &amp; RS(&quot;Especialidad&quot;) &amp; &quot;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Email:&amp;nbsp;&lt;a href=&quot;&quot;mailto:&quot; &amp; RS(&quot;Email&quot;) &amp; &quot;&quot;&quot;&gt;&quot; &amp; RS(&quot;Email&quot;) &amp; &quot;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Web:&amp;nbsp;&lt;a href=&quot;&quot;&quot; &amp; RS(&quot;Web&quot;) &amp; &quot;&quot;&quot;&gt;&quot; &amp; RS(&quot;Web&quot;) &amp; &quot;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Dirección:&amp;nbsp;&quo t; &amp; RS(&quot;Direccion&quot;) &amp; &quot;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;País:&amp;nbsp;&quot; &amp; RS(&quot;Pais&quot;) &amp; &quot;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Teléfono:&amp;nbsp;&quot ; &amp; RS(&quot;Telefono&quot;) &amp; &quot;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Comentarios:&amp;nbsp;&q uot; &amp; RS(&quot;Comentarios&quot;) &amp; &quot;&lt;/td&gt;&lt;/tr&gt;&quot;)




' Sumamos 1 a los mostrados
registro_mostrado = registro_mostrado + 1
' Nos movemos al próximo registro...
RS.MoveNext
Loop

'listo...
Response.Write &quot;&lt;/TABLE&gt;&quot; &amp; vbCrLf
End If

' Cerramos y limpiamos...
RS.Close
Set RS = Nothing
oConn.Close
Set oConn = Nothing


' Espacios
Response.Write &quot;&lt;BR&gt;&lt;BR&gt;&quot; &amp; vbCrLf


' Ahora mostramos los enlaces a las otras páginas con el resto de los registros...
If pagina_actual &gt; 1 Then
%&gt;


&lt;font face=verdana size=1&gt;&lt;a href=&quot;tupagina.asp?eje=30&amp;page=&lt;%= pagina_actual - 1 %&gt;&quot;&gt;&amp;nbsp;[&lt;&lt; Anterior]&lt;/font&gt;&lt;/a&gt;
&lt;%
End If

' mostramos la paginacion por numeros de página
For I = 1 To cant_paginas
If I = pagina_actual Then
%&gt;
&lt;font face=verdana size=1&gt;&lt;%= I %&gt;&lt;/font&gt;
&lt;%
Else
%&gt;
&lt;font face=verdana size=1&gt;&lt;a href=&quot;tupagina.asp?eje=30&amp;page=&lt;%= I %&gt;&quot;&gt;&amp;nbsp;&lt;%= I %&gt;&lt;/font&gt;&lt;/a&gt;
&lt;%
End If
Next 'I

If pagina_actual &lt; cant_paginas Then
%&gt;
&lt;font face=verdana size=1&gt;&lt;a href=&quot;tupagina.asp?eje=30&amp;page=&lt;%= pagina_actual + 1 %&gt;&quot;&gt;&amp;nbsp;[Siguiente &gt;&gt;]&lt;/font&gt;&lt;/a&gt;

&lt;%
End If
'Fin...
%&gt;

<a href="http://www.canalpublicidad.com"><img border="0" src="http://www.canalpublicidad.com/images/banner_crystal_g.gif" width="468" height="60"></a>
  #4 (permalink)  
Antiguo 22/06/2002, 21:24
 
Fecha de Ingreso: mayo-2002
Mensajes: 91
Antigüedad: 22 años
Puntos: 0
Re: Hola a todos

Gracias Manuel
Entendí el código perfectamente! ;)
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 01:07.