Problema con paginador
| From: | Alexis Saucedo | Date: | Wed, 11 Nov 2015 23:34:42 +0000 |
| Subject: | Problema con paginador | ||
| Groups: | php.general.es | ||
| Request: | Send a blank email to general-es+get-65712@lists.php.net to get a copy of this message | ||
Muy buenas noches, solicito su ayuda ya que no le encuentro la
solucion tengo un paginador el cual me muestra los numeros de paginas
segun la cantidad de registros, el problema es que no se como hacer
para que me muestra deqa tandaspor ejemplo,si tengo 20 paginasme
muestra las 20:
1-2-3-4-5-6-7-8-9-10-11-12,etc...
la idea es que no me muestra las 20 sino que valla de a 5
1-2-3-4-5, luego 2-3-4-5-6, etc...
¿podria ayudarme?mi codigo es el siguiente:
$per_page=1;
if (isset($_GET["page"])) {
$page = $_GET["page"];
}
else {
$page=1;
}
$start_from = ($page-1) * $per_page;
$fil = null;
$stockId = $_SESSION['stockId'];
if($stockId!='1'){
$fil = "AND (t2.stock_id = '$stockId')";
}
$query = "SELECT * FROM articulos".$start_from, $per_page";
$result = mysqli_query ($mysqli, $query);
while ($r = mysqli_fetch_assoc($result)) {
if($r['estado']=='1'){
$estado = 'Habilitado';
}else{
$estado = 'Deshabilitado';
}
$articulos[] = array('nombre'=>$r['nombre'],
'stock'=>$r['cantidad'],
'precio'=>$r['precio'],
'codigo'=>$r['codigo'],
'estado'=>$estado,
'id'=>$r['id']);
}
$query = "SELECT * FROM articulos";
$result = mysqli_query($mysqli, $query);
// Count the total record
$total_records = mysqli_num_rows($result);
//Using ceil function to divide the total records on per page
$total_pages = ceil($total_records / $per_page);
for ($i=1; $i<=$total_pages; $i++) {
if($i==$_GET['page']){
$clase = 'active';
}else{
$clase = '';
}
//numeros de paginas
$paginas[$i] = array('numero'=>$i,'clase'=>$clase);
};
//array_push($articulos, 'clase', $clase);
if($total_pages==$_GET['page']){
$siguiente = $total_pages;
}else{
$siguiente = $_GET['page']+1;
}
if($_GET['page']=='1'){
$anterior = '1';
}else{
$anterior = $_GET['page']-1;
}
Muchisimas gracias de antemano.