Ver Mensaje Individual
  #7 (permalink)  
Antiguo 07/09/2010, 23:10
heart_rocker
 
Fecha de Ingreso: diciembre-2009
Mensajes: 24
Antigüedad: 14 años, 4 meses
Puntos: 0
Respuesta: Necesito insertar un código para paginación de noticias...

Cita:
Iniciado por rodojpm Ver Mensaje
Código:
Estaba de paso y solo tengo unos minutos  asi que sere simple y dare poca informacion
lo que buscas se llama LIMIT
se utiliza asi:
$cantidad="10"; //la cantidad de noticias que quieres mostrar

$pag = (int) $_GET["pag"]; 
if ($pag < 1) //si la pagina es la primera entonces te dira que es 0, debemos ponerle de cantidad 1
{ 
   $pag = 1; 
} 
$inicio = $cantidad * $pag; //el inicio es variable dependiendo en la pagina en la que estes: osea si estas en la pagina 3 y son de 10 en 10 comentarios el inicio sera en la noticia #30


$noticias = mysql_query("SELECT id, noticia, titular, fecha, fotosmall, id, epigrafe FROM noticias ORDER BY id DESC LIMIT $inicio,$cantidad);

//aqui pones tu forma de imprimir las noticias

$sql = "SELECT SQL_CALC_FOUND_ROWS id,noticia titular,date,class,link,comment FROM noticias order by id DESC LIMIT $inicio, $cantidad"; 
$sqlTotal = "SELECT FOUND_ROWS() as total"; 
 
$rs = mysql_query($sql); 
$rsTotal = mysql_query($sqlTotal); 
 
$rowTotal = mysql_fetch_assoc($rsTotal); 
// Total de registros sin limit 
$total = $rowTotal["total"]; 
         $totalPag = ceil($total/$contenido); 
         for($i=1; $i<=$totalPag ; $i++) 
         { 
            $links[] = "<a href=\"?pag=$i\">$i</a>";  
         } 
         echo implode($links);
Primero que todo, gracias....
El código tenía un par de caracteres que faltaban (un " y un ; en algunas partes) pero eso lo puede arreglar y se solucionó...

Pero tengo 2 problemas que no he podido solucionar aún...

1.- La primera página que me muestra es la segunda que debería mostrar... sólo cuando le pongo $pag = 0 en vez de $pag < 0, se vé correcto, pero no sé si está bien desde el punto de vista teórico.... así

if ($pag = 0)
{
$pag = 1;
}


2.- Me aparece este error en vez de los links de las páginas:

Warning: Division by zero in C:\AppServ\www\agropecuario.cl\noticias.php on line 550
1

Bueno, igual aparece el link 1 al final que me lleva a la misma página... en teoría debería aparecer también la página 2, cierto?? pero no aparece...