Foros del Web » Creando para Internet » HTML »

Como paginar contenido de tabla ?

Estas en el tema de Como paginar contenido de tabla ? en el foro de HTML en Foros del Web. Hola, tengo el siguiente problema , busque y busque codigos pero no puedo hacer lo que quiero . Con el codigo siguiente: Código HTML: <head> ...
  #1 (permalink)  
Antiguo 19/11/2011, 15:46
 
Fecha de Ingreso: noviembre-2011
Mensajes: 9
Antigüedad: 12 años, 5 meses
Puntos: 0
Pregunta Como paginar contenido de tabla ?

Hola, tengo el siguiente problema , busque y busque codigos pero no puedo hacer lo que quiero .

Con el codigo siguiente:


Código HTML:
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
</head>

<body bgcolor="#000000">


<table cellpadding="0" cellspacing="0">
	<!-- MSTableType="layout" -->
	<tr>

		<td height="160" width="120" valign="top">	
		<a target="_blank" href="HIPERVINCULO" title="TITULO" >
		<img border="0"Español src="IMAGEN" width="120" height="160"></a></td>
		<td height="110" width="10" valign="top"><img border="0" src="IMAGEN_TRANSPARENTE_PARA_SEPARAR" width="10" height="110"></td>	


		<td height="160" width="120" valign="top">	
		<a target="_blank" href="HIPERVINCULO" title="TITULO" >
		<img border="0"Español src="IMAGEN" width="120" height="160"></a></td>
		<td height="110" width="10" valign="top"><img border="0" src="IMAGEN_TRANSPARENTE_PARA_SEPARAR" width="10" height="110"></td>	


		<td height="160" width="120" valign="top">	
		<a target="_blank" href="HIPERVINCULO" title="TITULO" >
		<img border="0"Español src="IMAGEN" width="120" height="160"></a></td>
		<td height="110" width="10" valign="top"><img border="0" src="IMAGEN_TRANSPARENTE_PARA_SEPARAR" width="10" height="110"></td>	


		<td height="160" width="120" valign="top">	
		<a target="_blank" href="HIPERVINCULO" title="TITULO" >
		<img border="0"Español src="IMAGEN" width="120" height="160"></a></td>
		<td height="110" width="10" valign="top"><img border="0" src="IMAGEN_TRANSPARENTE_PARA_SEPARAR" width="10" height="110"></td>	


		<td height="160" width="120" valign="top">	
		<a target="_blank" href="HIPERVINCULO" title="TITULO" >
		<img border="0"Español src="IMAGEN" width="120" height="160"></a></td>
		<td height="110" width="10" valign="top"><img border="0" src="IMAGEN_TRANSPARENTE_PARA_SEPARAR" width="10" height="110"></td>	


		<td height="160" width="120" valign="top">	
		<a target="_blank" href="HIPERVINCULO" title="TITULO" >
		<img border="0"Español src="IMAGEN" width="120" height="160"></a></td>
		<td height="110" width="10" valign="top"><img border="0" src="IMAGEN_TRANSPARENTE_PARA_SEPARAR" width="10" height="110"></td>	


		<td height="160" width="120" valign="top">	
		<a target="_blank" href="HIPERVINCULO" title="TITULO" >
		<img border="0"Español src="IMAGEN" width="120" height="160"></a></td>
		<td height="110" width="10" valign="top"><img border="0" src="IMAGEN_TRANSPARENTE_PARA_SEPARAR" width="10" height="110"></td>	


		<td height="160" width="120" valign="top">	
		<a target="_blank" href="HIPERVINCULO" title="TITULO" >
		<img border="0"Español src="IMAGEN" width="120" height="160"></a></td>
		<td height="110" width="10" valign="top"><img border="0" src="IMAGEN_TRANSPARENTE_PARA_SEPARAR" width="10" height="110"></td>	


		
	</tr>
</table>


</body>

Mi idea es que a partir de este fragmento del codigo anterior :

Código HTML:
	<td height="160" width="120" valign="top">	
		<a target="_blank" href="HIPERVINCULO" title="TITULO" >
		<img border="0"Español src="IMAGEN" width="120" height="160"></a></td>
		<td height="110" width="10" valign="top"><img border="0" src="IMAGEN_TRANSPARENTE_PARA_SEPARAR" width="10" height="110"></td> 
me lo tome como 1 elemento de la paginacion. O sea que tendria 8 elementos para paginar.

Me gustaria que por ejemplo la paginacion sea 2 elementos por pagina.
O sea que tendria 4 paginas en total completas.

Tambien armar el codigo pensando que agregare mas fragmentos como ese.

PD: Probe codigos y trate de adaptarlos para que me funcione para lo que quiero, pero no lo logro. Lo maximo que llegue con uno fue llegar a tener todo bien, salvo que me cargaba todas las imagenes en la primera pagina y yo quiero que carguen a medida que se hace la paginacion.

Espero que me puedan ayudar o me pudan dar indicios de como puedo seguir .

Saludos!
  #2 (permalink)  
Antiguo 20/11/2011, 05:44
 
Fecha de Ingreso: julio-2008
Ubicación: Barcelona
Mensajes: 2.100
Antigüedad: 15 años, 9 meses
Puntos: 165
Respuesta: Como paginar contenido de tabla ?

Lo puedes hacer con javascript, con lo que tendrías que cargar todos los resultados previamente para paginarlos, lo puedes hacer con Ajax, cargando los elementos a medida que te hagan falta ( al cambiar de página, por ejemplo ) o lo puedes hacer del lado servidor, cargando el contenido de cada página y realizando una petición por esta. ( en ajax no recargarías )

Yo soy partidario de hacerlo del lado servidor, porque? porque cada página tendrá su enlace, podrás validar la página que solicitan, y generarás un link que podrá ser indexado.

Opto por PHP, y si los resultados son dinámicos, los puedes almacenar en una base de datos y mejor que mejor.

http://www.desarrolloweb.com/articulos/1035.php

Un saludo!
__________________
Gracias por el Karma :D

empleo ofertas de trabajo
  #3 (permalink)  
Antiguo 20/11/2011, 06:42
 
Fecha de Ingreso: abril-2011
Mensajes: 169
Antigüedad: 13 años
Puntos: 4
Respuesta: Como paginar contenido de tabla ?

Con PHP y Ajax puedes hacerlo.
__________________
MiniMonigotes.com | Juegos flash online gratis - ¡Entra ya!
  #4 (permalink)  
Antiguo 20/11/2011, 06:46
 
Fecha de Ingreso: julio-2008
Ubicación: Barcelona
Mensajes: 2.100
Antigüedad: 15 años, 9 meses
Puntos: 165
Respuesta: Como paginar contenido de tabla ?

A mi no me gusta AJAX para esto, normalmente se suele usar el botón para "volver atrás", con AJAX no haría la función de volver a la página anterior, cierto?

Un saludo!
__________________
Gracias por el Karma :D

empleo ofertas de trabajo
  #5 (permalink)  
Antiguo 20/11/2011, 06:54
 
Fecha de Ingreso: abril-2011
Mensajes: 169
Antigüedad: 13 años
Puntos: 4
Respuesta: Como paginar contenido de tabla ?

Claro que tiene volver a la página anterior. La ventaja de Ajax es que no es necesario cambiar de página para ver las páginas siguientes, aunque con php solo, se puede hacer perfectamente.
__________________
MiniMonigotes.com | Juegos flash online gratis - ¡Entra ya!
  #6 (permalink)  
Antiguo 20/11/2011, 06:56
 
Fecha de Ingreso: julio-2008
Ubicación: Barcelona
Mensajes: 2.100
Antigüedad: 15 años, 9 meses
Puntos: 165
Respuesta: Como paginar contenido de tabla ?

Creo que no me has entendido.. hablo de la función nativa del navegador para volver a la página anterior, cuando digo página anterior no me refiero a la del paginador, si no a la que visitaste anteriormente.
__________________
Gracias por el Karma :D

empleo ofertas de trabajo
  #7 (permalink)  
Antiguo 20/11/2011, 07:04
 
Fecha de Ingreso: abril-2011
Mensajes: 169
Antigüedad: 13 años
Puntos: 4
Respuesta: Como paginar contenido de tabla ?

Ah... Vale, es la única pega.
__________________
MiniMonigotes.com | Juegos flash online gratis - ¡Entra ya!
  #8 (permalink)  
Antiguo 20/11/2011, 07:05
 
Fecha de Ingreso: julio-2008
Ubicación: Barcelona
Mensajes: 2.100
Antigüedad: 15 años, 9 meses
Puntos: 165
Respuesta: Como paginar contenido de tabla ?

Para mi es bastante incomoda..

Un saludo!
__________________
Gracias por el Karma :D

empleo ofertas de trabajo
  #9 (permalink)  
Antiguo 20/11/2011, 08:15
 
Fecha de Ingreso: noviembre-2011
Mensajes: 9
Antigüedad: 12 años, 5 meses
Puntos: 0
Respuesta: Como paginar contenido de tabla ?

Ante todo, muchas gracias a todos por responder!

Por lo que me decis miktrv:

Cita:
Iniciado por miktrv Ver Mensaje
Lo puedes hacer con javascript, con lo que tendrías que cargar todos los resultados previamente para paginarlos, lo puedes hacer con Ajax, cargando los elementos a medida que te hagan falta ( al cambiar de página, por ejemplo ) o lo puedes hacer del lado servidor, cargando el contenido de cada página y realizando una petición por esta. ( en ajax no recargarías )

Yo soy partidario de hacerlo del lado servidor, porque? porque cada página tendrá su enlace, podrás validar la página que solicitan, y generarás un link que podrá ser indexado.

Opto por PHP, y si los resultados son dinámicos, los puedes almacenar en una base de datos y mejor que mejor.

[url]http://www.desarrolloweb.com/articulos/1035.php[/url]

Un saludo!
Podria hacerlo con base de datos, pero realmente me lei la pagina que me pasaste y no la entiendo . Siento que lo que me quedaria es hacerlo por javascript, ya que en ajax no se recargaria, en javascript se recargaria?.

alguna url para hacerlo por javascript?
  #10 (permalink)  
Antiguo 20/11/2011, 08:23
 
Fecha de Ingreso: julio-2008
Ubicación: Barcelona
Mensajes: 2.100
Antigüedad: 15 años, 9 meses
Puntos: 165
Respuesta: Como paginar contenido de tabla ?

Podrías pasar un parámetro por URL, si quieres recargar la página , te dejo un Link


http://webborg.blogspot.com/2007/07/...-from-url.html

Después recogerás el parámetro de página y mostrarás el contenido asociado a esa página

Un saludo!
__________________
Gracias por el Karma :D

empleo ofertas de trabajo
  #11 (permalink)  
Antiguo 20/11/2011, 09:18
 
Fecha de Ingreso: noviembre-2011
Mensajes: 9
Antigüedad: 12 años, 5 meses
Puntos: 0
Respuesta: Como paginar contenido de tabla ?

Cita:
Iniciado por miktrv Ver Mensaje
Podrías pasar un parámetro por URL, si quieres recargar la página , te dejo un Link


[url]http://webborg.blogspot.com/2007/07/querystring-get-parameters-from-url.html[/url]

Después recogerás el parámetro de página y mostrarás el contenido asociado a esa página

Un saludo!
Gracias nuevamente , pero me siento mal, porque tampoco entiendo jaja. Creo que me voy a resignar, no se que hacer :S.

Saludos!
  #12 (permalink)  
Antiguo 20/11/2011, 09:35
 
Fecha de Ingreso: julio-2008
Ubicación: Barcelona
Mensajes: 2.100
Antigüedad: 15 años, 9 meses
Puntos: 165
Respuesta: Como paginar contenido de tabla ?

Bueno, puedes resignarte o intentar aprender, o que te lo haga alguien.

Un saludo!
__________________
Gracias por el Karma :D

empleo ofertas de trabajo
  #13 (permalink)  
Antiguo 23/11/2011, 10:07
 
Fecha de Ingreso: noviembre-2011
Mensajes: 9
Antigüedad: 12 años, 5 meses
Puntos: 0
Respuesta: Como paginar contenido de tabla ?

Cita:
Iniciado por miktrv Ver Mensaje
Bueno, puedes resignarte o intentar aprender, o que te lo haga alguien.

Un saludo!
tarde en responder, pork lo pense y no me resigne jaja.
Ahora tengo este problema :S.
Consegui este codigo buscando:

- Este para la tabla:

Código PHP:
CREATE TABLE IF NOT EXISTS `page_next_previus` (
`
idint(11NOT NULL auto_increment,
`
titlevarchar(250NOT NULL,
`
contenttext NOT NULL,
PRIMARY KEY  (`id`)
ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=;


INSERT INTO `page_next_previus` (`id`, `title`, `content`) VALUES
(1'Titulo 1''ESTO ES UN EJEMPLO DEL CONTENIDO 1'),
(
2'Titulo 2''ESTO ES UN EJEMPLO DEL CONTENIDO 2'),
(
3'Titulo 3''ESTO ES UN EJEMPLO DEL CONTENIDO 3'),
(
4'Titulo 4''ESTO ES UN EJEMPLO DEL CONTENIDO 4'); 
-Este para el archivo:

Código PHP:
<?php
/*
* autor: Abraham Zenteno Sánchez
* mail:  [email protected]

* page: http://abzenteno.blogspot.com
*/
$host "localhost";
$user "";
$passwd "";
$database "examphp";

//provando conexion con mysql
$db mysql_connect($host,$user,$passwd);

//provando conexion con la base de datos
@mysql_select_db($database,$db);

$rows_for_page 1//numero de registros a mostra
$sql "SELECT * FROM page_next_previus";
$result mysql_query($sql$db);
//total de registros existentes en la tabla
$total_records = @mysql_num_rows($result);

//total de paginas
$pages ceil($total_records $rows_for_page);

@
mysql_free_result($result);

//si no existe por GET la var screen coloca por defecto el valor de 0
if (!isset($_GET['screen']))
  
$screen 0;
//de lo contrario asigna el valor por get a $position
else
  
$position = (int)$_GET['screen'];

//comenzando el paginado
$start $screen $rows_per_page;
//consulta ala db por limites
$sql "SELECT * FROM page_next_previus order by id ASC LIMIT ".$position.",".$rows_for_page;
//ejecuta el query
$result mysql_query($sql$db);
//resultados de la consulta (total)
$rows = @mysql_num_rows($result);

//imprime registros
for ($i 0$i $rows$i++) {
  
$title mysql_result($result,$i,1);
  
$content mysql_result($result,$i,2);
  echo 
"<h1> $title </h1>
      <br>
      <p>$content</p><br>"
;
}
//comienza el paginado
echo '<p><hr></p>
<div style="width:100%; text-align:center;">'
;
//si posicion es mayor o igual a 1 quiere decir que muestre la parte Primero y Anterior de la paginación
if ($position >= 1) {
  
$url "pag_next.php?screen=0";
  echo 
"<a href=\"$url\">Primero</a>\n";
  
//para que el preius no termine con valor 0
   
$url "pag_next.php?screen=" .($position-1);
  echo 
"<a href=\"$url\">Anterior</a>\n";
}
//sirve para expandir el prollecto para poder paginar de la manera (Primero Anterior | 0 | 1 | 2 | 3 | Siguiente Ultimo)
/*for ($i = 0; $i < $pages; $i++) {
  $url = "pag_next.php?screen=" . $i;
  echo " | <a href=\"$url\">$i</a> | ";
}*/

//muestra total de resultados 1 de N
echo '<strong>'.($position+1).' de '.$pages.' </strong>';

//si position es menor a el valor entre los parentesis muestra la parte (Siguiente Ultimo)
if ($position < ($pages-1)) {
  
$url "pag_next.php?screen=" . ($position+1);
  echo 
"<a href=\"$url\">Siguiente</a>\n";
  
$url "pag_next.php?screen=" . ($pages-1);
  echo 
"<a href=\"$url\">Ultimo</a>\n";
}
echo 
'</div>';
?>
El codigo lo pude hacer andar sin problemas por suerte , el problema esta cuando toco la variable $rows_for_page, en ese codigo esta como defecto en 1.
Cuando la paso a dos por ejemplo, en la paginacion me muestra :

en la pagina 1, el contenido del registro 1 y 2
en la pagina 2, el contenido del registro 2 y 3
y el 4 nunca aparece.

Y si pongo un numero mas grande es peor el error XD.

Mi idea es que me quede en este caso(con 1 en la variable $rows_for_page):
en la pagina 1, el contenido del registro 1 y 2
en la pagina 2, el contenido del registro 3 y 4

Realmente no se cual es el error, que tendria que cambiar del codigo?

Desde ya muchas gracias !!!!

Última edición por skip77; 23/11/2011 a las 10:20
  #14 (permalink)  
Antiguo 23/11/2011, 11:00
 
Fecha de Ingreso: julio-2008
Ubicación: Barcelona
Mensajes: 2.100
Antigüedad: 15 años, 9 meses
Puntos: 165
Respuesta: Como paginar contenido de tabla ?

Has escogido la mejor opción!

solo que la implementas a medias, ( soy algo duro para animarte a aprender )

Lo digo porque parece que no estas haciendo las cosas para aprender, si no para que funcionen porque eso dice que así debe de ser.

No me he mirado el script, porque considero que lo puedes hacer tu solo, espero que aprecies mi esfuerzo por enseñarte y no te lo tomes mal. Si no, puedes pedir que alguien te lo haga y te contestarán rápido, pero siempre dependerás de alguien...

Vamos por pasos. ¿ qué necesitas para que tu paginador funcione ?

1 - Una base de datos ( OK )
2 - Una tabla como mínimo ( OK )
3 - Unos links que cambien de página ( NO )
4 - Un sistema que cambie de pagina según el parámetro que recibe. ( NO )

Nos faltan dos pasos. ¿ Cómo puedo generar unos links que me devuelvan un listado de páginas ? ¿ qué necesito ?

1. Cuantos resultados habrá por página.
2. Cuantos resultados tengo en total.

Para el primer punto, te defines una variable o constante que contenga ese número, esto lo sabes hacer.

Para el segundo punto, puedes hacer dos cosas, o mysql_num_rows, o mejor aún, un select count que te devuelva el número de resultados. Ahora solo falta hacer el cálculo que me devuelva el número de paginas a través de estos dos parámetros.

Por ejemplo: 10 resultados en total, a 2 por página. ( 10 / 2 ) = 5 páginas!!

Muy bien, segundo ejemplo 13 resultados en total a 3 por página ( 13 / 5 ) = 2,6 páginas!!

Muy bien.. que puedo hacer? round para comerme el decimal y que me devuelva 3... pero.. que pasaría si me devuelve 2.1? el round me devolverá 2? son 3!!

para eso tienes la función ceil. http://php.net/manual/es/function.ceil.php

Esta parte la tienes clara?
__________________
Gracias por el Karma :D

empleo ofertas de trabajo
  #15 (permalink)  
Antiguo 23/11/2011, 12:14
 
Fecha de Ingreso: noviembre-2011
Mensajes: 9
Antigüedad: 12 años, 5 meses
Puntos: 0
Respuesta: Como paginar contenido de tabla ?

Cita:
Iniciado por miktrv Ver Mensaje
Has escogido la mejor opción!

solo que la implementas a medias, ( soy algo duro para animarte a aprender )

Lo digo porque parece que no estas haciendo las cosas para aprender, si no para que funcionen porque eso dice que así debe de ser.

No me he mirado el script, porque considero que lo puedes hacer tu solo, espero que aprecies mi esfuerzo por enseñarte y no te lo tomes mal. Si no, puedes pedir que alguien te lo haga y te contestarán rápido, pero siempre dependerás de alguien...

Vamos por pasos. ¿ qué necesitas para que tu paginador funcione ?

1 - Una base de datos ( OK )
2 - Una tabla como mínimo ( OK )
3 - Unos links que cambien de página ( NO )
4 - Un sistema que cambie de pagina según el parámetro que recibe. ( NO )

Nos faltan dos pasos. ¿ Cómo puedo generar unos links que me devuelvan un listado de páginas ? ¿ qué necesito ?

1. Cuantos resultados habrá por página.
2. Cuantos resultados tengo en total.

Para el primer punto, te defines una variable o constante que contenga ese número, esto lo sabes hacer.

Para el segundo punto, puedes hacer dos cosas, o mysql_num_rows, o mejor aún, un select count que te devuelva el número de resultados. Ahora solo falta hacer el cálculo que me devuelva el número de paginas a través de estos dos parámetros.

Por ejemplo: 10 resultados en total, a 2 por página. ( 10 / 2 ) = 5 páginas!!

Muy bien, segundo ejemplo 13 resultados en total a 3 por página ( 13 / 5 ) = 2,6 páginas!!

Muy bien.. que puedo hacer? round para comerme el decimal y que me devuelva 3... pero.. que pasaría si me devuelve 2.1? el round me devolverá 2? son 3!!

para eso tienes la función ceil. [url]http://php.net/manual/es/function.ceil.php[/url]

Esta parte la tienes clara?
gracias por contestar

esta todo bien, realmente valoro tu esfuerzo por enseñarme . y es verdad siempre sino dependere de alguien, es que siento que me cuesta pork de todos lados que leo no entiendo porque siempre me falta saber algo anterior parece y no se k que, este por suerte lo entendi como para hacerlo andar.

ahora, por lo que me dijiste vos :

Vamos por pasos. ¿ qué necesitas para que tu paginador funcione ?

1 - Una base de datos ( OK )
2 - Una tabla como mínimo ( OK )
3 - Unos links que cambien de página ( NO )
4 - Un sistema que cambie de pagina según el parámetro que recibe. ( NO )

yo creo que me explique mal(te lo aclaro pork no viste el codigo), el script me hace la paginacion, pero la hace mal, o sea esta diseñado para que solo tenga un registro por pagina por lo que pienso XD.

no me la muestra toda junta. y los links me los genera, o sea el de siguiente anterior y demas.

los puntos que me nombras siento que los tiene y estan en el codigo, o yo no te entiendo que me queres decir :S

Saludos!

Etiquetas: contenido, imagenes, paginar, tabla
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 04:14.