Ir para conteúdo
Fórum Script Brasil
  • 0

páginação


Diogo Freitas

Pergunta

boas tardes,

depois de questionar como limitar o numero de registos por página o Eserra me indicou a paginação.

utilizei um código pronto do Beraldo, porém o código não passa as páginas ou seja, mesmo excedendo o máximo de limite de registos ele não permite passar para outra página, embora apenas mostre os registos definidos.

<?php

require "conectdbmusica.php";

$re = mysql_query("SELECT count(*) as total FROM musica");
$total = mysql_result($re, 0, "total");

$pagina = 0;
if(isset($_GET["pagina"])) {

$pagina = $_GET["pagina"];

}

$limite = 10;
$paginas = ceil($total / $limite);

$inicio = $pagina * $limite; 

$sql = mysql_query("SELECT * FROM musica LIMIT $inicio, $limite"); 

$conta = mysql_num_rows($sql);

while($dds = mysql_fetch_assoc($sql)) { 

        print "<strong><a href='bg.php?id={$dds['id_banda']}'>{$dds['banda']}</a></strong> - {$dds['musica']}<br/>";
        print "{$dds['palavras']}<br/>";
        print "{$dds['data']}<p>";


}

if($pagina > 0) {
   $menos = $pagina - 1;
   $url = $_SERVER["PHP_SELF"]."?pagina=".$menos;
   echo "<a href=\"bg_index.php\">Anterior</a>"; 
}
for($i = 1;$i < $paginas; $i++) { 
   $url = $_SERVER["PHP_SELF"]."?pagina=".$i;
   echo " | <a href=\"bg_index.php\">$i</a>";
}
if($pagina < $paginas) {
   $mais = $pagina + 1;
   $url = $_SERVER["PHP_SELF"]."?pagina=".$mais;

   echo " | <a href=\"bg_index.php\">Próxima</a>";

}
?>

alguém me diz o k tá mal?

p.s.: eu substitui "página" pela minha página "bg_index.php" mas continuou sem dar.

abraço e muito obrigado

Link para o comentário
Compartilhar em outros sites

6 respostass a esta questão

Posts Recomendados

  • 0

Substitua isso ...

if($pagina > 0) {
   $menos = $pagina - 1;
   $url = $_SERVER["PHP_SELF"]."?pagina=".$menos;
   echo "<a href=\"bg_index.php\">Anterior</a>"; 
}
for($i = 1;$i < $paginas; $i++) { 
   $url = $_SERVER["PHP_SELF"]."?pagina=".$i;
   echo " | <a href=\"bg_index.php\">$i</a>";
}
if($pagina < $paginas) {
   $mais = $pagina + 1;
   $url = $_SERVER["PHP_SELF"]."?pagina=".$mais;

   echo " | <a href=\"bg_index.php\">Próxima</a>";
por isso ...
if($pagina > 0) {
   $menos = $pagina - 1;
   $url = $_SERVER["PHP_SELF"]."?pagina=".$menos;
   echo "<a href=\"bg_index.php?pagina=".($_GET['pagina']-1)."\">Anterior</a>"; 
}
for($i = 1;$i < $paginas; $i++) { 
   $url = $_SERVER["PHP_SELF"]."?pagina=".$i;
   echo " | <a href=\"bg_index.php\">$i</a>";
}
if($pagina < $paginas) {
   $mais = $pagina + 1;
   $url = $_SERVER["PHP_SELF"]."?pagina=".$mais;

   echo " | <a href=\"bg_index.php?pagina=".($_GET['pagina']+1)."\">Próxima</a>";

Link para o comentário
Compartilhar em outros sites

  • 0

Ah sim. Troque este bloco ...

if($pagina < $paginas) {
   $mais = $pagina + 1;
   $url = $_SERVER["PHP_SELF"]."?pagina=".$mais;

   echo " | <a href=\"bg_index.php\">Próxima</a>";

}
por esse ...
if($pagina <= $paginas) {
   $mais = $pagina + 1;
   $url = $_SERVER["PHP_SELF"]."?pagina=".$mais;

   echo " | <a href=\"bg_index.php\">Próxima</a>";

}

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      652,1k
×
×
  • Criar Novo...