
21/11/2015, 07:54
|
 | Colaborador | | Fecha de Ingreso: septiembre-2009 Ubicación: mortuoria
Mensajes: 3.805
Antigüedad: 15 años, 6 meses Puntos: 214 | |
Respuesta: mostrar contenido array segun criterio de paginacion Saludo.
Pues ese no es el problema.
El asunto es que se pierde el filtro pues la paginación usa GET,
en cuyo caso la función de paginación necesita obtener ese dato
para luego usarlo a la hora de dibujar las páginas.
Igualmente, como está el código actualmente, no está dibujando
los links de anterior, siguiente y página por completo, esto es
por el cálculo que se hace en la variabla páginas usando p,
cosa que deberia cambiar a ser usando el count del array que se recibe.
Voy a dejarte el código con algunas mejoras para que lo revises.
array.php
Código PHP:
Ver original<?php ( array('Maria','25','Administrativo'), array('Antonio','45','Gerente comercial'), array('Susana','37','Gerente RR.HH.'), array('Luis','28','Administrativo'), array('Antonio','38','Mozo Almacén'), array('Susana','37','Gerente RR.HH.'), array('Maria','26','Administrativo'), array('Antonio','45','Gerente comercial'), array('Susana','37','Gerente RR.HH.'), array('Maria','27','Administrativo'), array('Antonio','45','Gerente comercial'), array('Susana','37','Gerente RR.HH.') ); ?>
index.php
Código PHP:
Ver original<?php include_once 'array.php'; include_once 'paginar.php'; $p = $_GET['p']; else $p=1; $t = ''; $t = $_GET['t']; else if(isset($_POST['TxtBuscar'])) $t = $_POST['TxtBuscar']; ?> <form action="index.php" method="post"> <input type="text" name="TxtBuscar" size="22" maxlength="150"> <input type="submit" value="Buscar"> </form> <?php { $coincidencias = array(); foreach($datos as $valor) { if($t == $valor[0]){ $coincidencias[]=$valor; } } } else $coincidencias = $datos; ?> <?php //Aqui ponemos el número de elementos que queremos que aparezca por página, en este caso 2 paginar($coincidencias, 2, $p, $t); ?>
paginar.php
Código PHP:
Ver original<?php function paginar($datos, $l, $p, $t) { // DEFINIMOS LA CANTIDAD DE PÁGINAS // CONDICION DE INICIO $inicio = ($p-1)*$l; // CONDICION DE FINAL $final = $p*$l; // MOSTRAMOS LOS ITEMS RESPECTIVOS echo '<div id="resultados">'; for ($i=$inicio; $i<$final; $i++) { echo "<div id=\"item\">".$datos[$i][0]." ".$datos[$i][1]." ".$datos[$i][2]."</div>"; else break; } echo '</div>'; // LISTAMOS LAS PÁGINAS echo '<div id="paginas">'; if ($p>1) echo "<a href=\"index.php?p=" . ($p-1) . "&t=".$t."\">Página Anterior</a> - "; for ($i=1; $i<=$paginas; $i++) { if ($i == $p) echo "<strong>$i</strong> "; else echo "<a href=\"index.php?p=$i&t=$t\">$i</a> "; } if ($p<$paginas) echo " - <a href=\"index.php?p=" . ($p+1) . "&t=$t\">Página Siguiente </a>"; echo '</div>'; return; } ?>
__________________ "Si consigues ser algo más que un hombre, si te entregas a un ideal, si nadie puede detenerte, te conviertes en algo muy diferente."
Visita piggypon.com |