santosbio 0 Denunciar post Postado Março 2, 2011 Bom dia a todos. Estou criando um sistema de notícias, onde são exibidos os títulos/resumos das 5 últimas notícias cadastradas. Utilizei o seguinte código para fazer a exibição/paginação dos resultados: <?PHP include "inc/conecta.php"; $campos_query = "*"; $final_query = "FROM tabela "; // Declaração da pagina inicial $pagina = $_GET['pagina']; if($pagina == "") { $pagina = "1"; } // Maximo de registros por pagina $maximo = 5; // Calculando o registro inicial $inicio = $pagina - 1; $inicio = $maximo * $inicio; // Conta os resultados no total da minha query $strCount = "SELECT COUNT(*) AS 'id' $final_query "; $query = mysql_query($strCount); $row = mysql_fetch_array($query); $total = $row["id"]; if($total <= 0) { echo "<center>Nenhum registro encontrado.</center>"; } $strQuery = mysql_query("SELECT $campos_query $final_query ORDER BY id DESC LIMIT $inicio,$maximo"); while($linha = mysql_fetch_array($strQuery)) {// vai exibir os resultados com um link caso queira exibir informações sobre cada registro $id = $linha["id"]; $tit = utf8_encode($linha["titulo"]); $titulo = substr("$tit",0,85)."..."; $noticia = utf8_encode(strip_tags($linha["noticia"])); $resumoNot = substr("$noticia",0,230)."..."; $data = $linha["dia"]."-".$linha["mes"]."-".$linha["ano"]; echo "<a style='color:#39BB64; font-weight:bold; text-decoration:none;'>$data</a> - <a href='visualiza.php?id=$id' style='color:#ffffff; font-weight:bold;'>$titulo</a>"; echo "<br />"; echo "<a style='color:#DDDDDD; text-decoration:none;'>$resumoNot</a><br /><br />"; } // Calculando pagina anterior $menos = $pagina - 1; // Calculando pagina posterior $mais = $pagina + 1; echo"<div id='paginacao'>"; $pgs = ceil($total / $maximo); if($pgs > 1 ) { // Mostragem de pagina if($menos>0) { echo "<a href=\"?pagina=$menos&seed\" class='texto_paginacao'>Anterior</a> "; } else { echo "Anterior "; } // Listando as paginas for($i=1;$i <= $pgs;$i++) { if($i != $pagina) { echo " <a href=\"?pagina=".($i)."&seed\" class='texto_paginacao'>$i</a>"; } else { echo " <strong class='texto_paginacao_pgatual'>".$i."</strong>"; } } if($mais <= $pgs) { echo " <a href=\"?pagina=$mais&seed\" class='texto_paginacao'>Próxima</a>"; } else { echo " Próxima"; } } echo"</div>"; ?> Nunca tinha feito uma paginação, então pesquisei no fórum e adaptei a parte de paginação desse código acima. Porém, eu queria limitar o número de links exibidos na paginação. Ou seja, caso eu tenha 30 páginas de resultados, a paginação deveria ocorrer da seguinte forma: Anterior 1 2 3 4 5 ... 30 Próxima Já encontrei no banco de scripts do fórum um exemplo disso, mas não consegui compreender bem qual era a parte do código responsável por fazer essa limitação. Alguém poderia me ajudar com isso? Obrigado. Compartilhar este post Link para o post Compartilhar em outros sites
Francispansa 6 Denunciar post Postado Março 2, 2011 Porém, eu queria limitar o número de links exibidos na paginação. Ou seja, caso eu tenha 30 páginas de resultados, a paginação deveria ocorrer da seguinte forma: Anterior 1 2 3 4 5 ... 30 Próxima Amigo, não compreendi o que você realmente precisa, me diga uma coisa, quantos link você quer mostrar por página 1? Compartilhar este post Link para o post Compartilhar em outros sites
santosbio 0 Denunciar post Postado Março 2, 2011 Porém, eu queria limitar o número de links exibidos na paginação. Ou seja, caso eu tenha 30 páginas de resultados, a paginação deveria ocorrer da seguinte forma: Anterior 1 2 3 4 5 ... 30 Próxima Amigo, não compreendi o que você realmente precisa, me diga uma coisa, quantos link você quer mostrar por página 1? Imagine a seguinte situação: No meu banco de dados, eu tenho cadastradas 50 notícias. Na pagina onde elas são listadas, eu configuro para que apareçam somente 5 notícias por vez (o que nos daria 10 páginas de notícias, correto?). Então.... nesse caso, a paginação ficaria assim: Anterior 1 2 3 4 5 6 7 8 9 10 Próxima O que eu quero fazer é o seguinte:. Em vez de aparecerem os 10 links das páginas, eu quero que apareça só 5, e um link para a última página, estilo esse aqui: Anterior 1 2 3 4 5 ... 10 Próxima Compartilhar este post Link para o post Compartilhar em outros sites
Francispansa 6 Denunciar post Postado Março 2, 2011 Desculpe a demora em responder, tinha saido.. Voltando ao assunto, agora entendi..hehe veja se isso aqui não te ajuda, http://www.webmaster.pt/paginacao-avancada-com-php-6086.html Abrass Compartilhar este post Link para o post Compartilhar em outros sites