Paginação de sites em PHP
Olá !
Estou com um problema, escrevi esté código em php é ele dá bug na páginação, peço ajuda como resolve-lo, pq apartir da terceira página ele não imprime mais nada.
<?php
include "conec.php"; // Pagina que conecta com o banco de dados mysql
if(empty($_GET['pagina'])) $pagina = 1; // em caso de 'pagina' for vazio $pagina = 1
if(!empty($_GET['pagina'])) $pagina = $_GET['pagina']; // em caso tiver algo em 'pagina' $pagina = ao que tiver em 'pagina'
$consulta = "SELECT * FROM anuncios"; // Seleciona tudo na tabela anuncios
$resultado = mysql_query($consulta); // faz a consulta e armazena em $resultado
$qnt_registros = mysql_num_rows($resultado); // conta qnts registros tem na tabela 'anuncios'
$anun_pagina = 9; // número de anúncios a serem exibidas por página
$paginas_ter = ceil($qnt_registros/$anun_pagina); // calcula o numero de paginas que irá ter (ceil) arredonda pra cima
// Abaixo está o que seria o que faz a páginação. Mas na 3 página não exibe mais resultados e assim por diante ...
if($pagina == 1) $inicia = 0; // inicia no anuncio 0 caso a página for a '1'
$termina = 9; // termina a 9 anuncios a frente
if($pagina > 1){ // caso a pagina for maior que 2
$inicia = 9;
if($pagina == 2) $inicia = 9; // caso a pagina for 2 inicia em '9'
if($pagina >= 3){ // caso a página for maior que '3'
// aqui já é da '3' pagina em diante ...
$pagina = ($pagina - 2);
while($pagina > 0){
$inicia = ($inicia + 9);
$pagina--;
}
}
}
$resultado2 = mysql_query($consulta." LIMIT ".$inicia.",".$termina); // inicia em 'x' termina em 'x+9' ...
while($linha = mysql_fetch_assoc($resultado)){ // imprime os anuncios na tela ...
$autor = $linha['autor'];
$titulo = $linha['titulo'];
$imagem1 = $linha['imagem1'];
$preco = $linha['preco'];
}
?>Discussão (0)
Carregando comentários...