paginar resultados de un while

Iniciado por RedZer, 17 Junio 2011, 21:59 PM

0 Miembros y 1 Visitante están viendo este tema.

~ Yoya ~

Entonce quieres que se elimine el 1?

Si te fijas, en el 1 aparecen 10 fechas, pero en la 2 y 3 aparecen 24 fechas.
Mi madre me dijo que estoy destinado a ser pobre toda la vida.
Engineering is the art of balancing the benefits and drawbacks of any approach.

RedZer

Cita de: ~ Yoya ~ en 21 Junio 2011, 23:43 PM
Entonce quieres que se elimine el 1?

Si te fijas, en el 1 aparecen 10 fechas, pero en la 2 y 3 aparecen 24 fechas.
si en el numero 1 aparecen 10 fechas pero por paginas si te das cuenta no son las mismas en la pagina 2 son otras
y lo que yo deceo es que se paginene las fechas que aparecen en la tabal osea en el numero 2 y 3 pero no se como
Nacido y criado entre gente que enseño a pensar antes de creer a ciegas, Todo me causa curiosidad en el mundo

~ Yoya ~

Bueno le hize un pequeño cambio, ahora por pagina me presenta 10, 10... Todo en un solo archivo.

index.php
Código (php) [Seleccionar]
<table width="200" border="1">
  <tr>
    <td>num</td>
    <td>fecha</td>
  </tr>
<?php

$paginar 
= array();
 
$inicio=strtotime('2011-01-05'); 
 
$final=strtotime('2011-12-07'); 
 
$contador=0;
 while(
$inicio <= $final) { 
 
 echo
"<tr>";
  echo 
" <td>"$paginar[]=date("Y-m-d"$inicio)."<br>"."</td>"
$iniciostrtotime("+14 day"$inicio); 
 
 echo
" <td>$contador</td>
  </tr>"
;
 
 
$contador++;
}
 
//include("paginar.php");
$mostrar =10//numero de elementos por pagina
$cuantos count($paginar); //para saber cuantos elementos tiene el array
$paginar array_reverse($paginar); //para que muestre los nuevos primeros. Totalmente opcional
$paginas $cuantos $mostrar//numero de paginas
 
if (!isset($mostrar) or empty($mostrar) or !is_int($mostrar)) {
    
$mostrar 5//por si se te olvid?clarar $mostrar o no es entero le damos de valor 5
}
if (empty(
$_GET["pagina"])) { //si no hay pagina...
    
$desde =0//principio de la primera pagina
    
$hasta $desde $mostrar//fin de la primera pagina
}
if (!empty(
$_GET["pagina"])) { //si estamos en una pagina distinta de la primera...
    
$desde = (int)$_GET["pagina"]; //principio de la pagina X
    
if ($desde $mostrar $cuantos) { //si principio + 10 no es mayor a la cantidad de elementos
        
$hasta $desde $mostrar//fin de la pagina X
}else{
    
$hasta $desde + ($cuantos $desde); //por si $principio + 10 es superior al numero de elementos
}
}
 
 
for (
$i=$desde$i<$hasta$i++) {
    echo 
$paginar[$i].'<br/>'//mostramos los elementos de la pagina en la que estamos. Aqui que cada uno lo haga como buenamente pueda. xD
}
 
for (
$p=0$p<=$paginas$p++) {
$dexde $p $mostrar//para marcar el inicio de la siguiente pagina
echo '<a href=index.php?pagina='.$dexde.'>'.$p.'</a> - '//mostramos la lista de paginas. Que cada uno las muestre como quiera
}

?>
</table>


Dime si estoy mal.
Mi madre me dijo que estoy destinado a ser pobre toda la vida.
Engineering is the art of balancing the benefits and drawbacks of any approach.

RedZer

yoya no veo mucho cambio al code que yo tenia:/
me sigue apareciendo la tabla pero sin paginar mira te anexo una imagen de lo que deceo hacer
como te pudiste dar cuenta en las fechas que aparecen fuera de la tabla solo muestran 10 pero por pagina osea que en la pagina 2 muestra otras 10
ok asi es lo que deceo hacer pero con la tabla  osea asi como esta la tabla con fechas me lo pagine me muestre 10 resultados y en la siguiente pag otros dies y asi sucesivamente y no que me muestre los 24 resultados de jalon
http://i55.tinypic.com/2mmzbeq.jpg
Nacido y criado entre gente que enseño a pensar antes de creer a ciegas, Todo me causa curiosidad en el mundo

~ Yoya ~

Bueno, creo que ahora si.

http://i56.tinypic.com/vy0hed.png

Código (php) [Seleccionar]
<table width="200" border="1">
  <tr>
    <td>num</td>
    <td>fecha</td>
  </tr>
<?php

$paginar 
= array();
 
$inicio=strtotime('2011-01-05'); 
 
$final=strtotime('2011-12-07'); 
 
$contador=0;
 while(
$inicio <= $final) { 
 

$paginar[]=date("Y-m-d"$inicio);
$iniciostrtotime("+14 day"$inicio); 

}
 
//include("paginar.php");
$mostrar =10//numero de elementos por pagina
$cuantos count($paginar); //para saber cuantos elementos tiene el array
$paginar array_reverse($paginar); //para que muestre los nuevos primeros. Totalmente opcional
$paginas $cuantos $mostrar//numero de paginas
 
if (!isset($mostrar) or empty($mostrar) or !is_int($mostrar)) {
    
$mostrar 5//por si se te olvid?clarar $mostrar o no es entero le damos de valor 5
}
if (empty(
$_GET["pagina"])) { //si no hay pagina...
    
$desde =0//principio de la primera pagina
    
$hasta $desde $mostrar//fin de la primera pagina
}
if (!empty(
$_GET["pagina"])) { //si estamos en una pagina distinta de la primera...
    
$desde = (int)$_GET["pagina"]; //principio de la pagina X
    
if ($desde $mostrar $cuantos) { //si principio + 10 no es mayor a la cantidad de elementos
        
$hasta $desde $mostrar//fin de la pagina X
}else{
    
$hasta $desde + ($cuantos $desde); //por si $principio + 10 es superior al numero de elementos
}
}
 
 
for (
$p=0$p<=$paginas$p++) {
$dexde $p $mostrar//para marcar el inicio de la siguiente pagina
echo '<a href=index.php?pagina='.$dexde.'>'.$p.'</a> - '//mostramos la lista de paginas. Que cada uno las muestre como quiera
}
 

for (
$i=$desde$i<$hasta$i++) {

 echo 
"<tr>";
    echo 
'<td>'.$paginar[$i].'</td>'//mostramos los elementos de la pagina en la que estamos. Aqui que cada uno lo haga como buenamente pueda. xD

    
echo '<td>'.($i+1).'</td>';

 echo 
"</tr>";
}


?>
</table>
Mi madre me dijo que estoy destinado a ser pobre toda la vida.
Engineering is the art of balancing the benefits and drawbacks of any approach.

RedZer

exelente yoya muchas gracias..

Nacido y criado entre gente que enseño a pensar antes de creer a ciegas, Todo me causa curiosidad en el mundo