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

Erro De Paginação


Eric Freitas

Pergunta

if($pagina > 0) {
                   $menos = $pagina - 1;
                   $url = $_SERVER["PHP_SELF"]."?sec=legislativa&tipo=".$_GET['tipo']."&pagina=".$menos;
                   echo "<a href=\"$url\">Anterior</a>"; 
            }else echo'Anterior';
            for($_i = 0;$_i<$paginas-5; $_i++) { 
               $url = $_SERVER["PHP_SELF"]."?sec=legislativa&tipo=".$_GET['tipo']."&pagina=".$_i;
               
               if($_i==0) $_link=1;
               else $_link=$_i+1;
               echo " | <a href=\"$url\">". $_link ."</a> |";
            }
            if($pagina < $paginas-5) {
               $mais = $pagina + 1;
               $url = $_SERVER["PHP_SELF"]."?sec=legislativa&tipo=".$_GET['tipo']."&pagina=".$mais;

               echo " <a href=\"$url\">Próxima</a>";

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Exemplo de paginação

function exibeTodas() {
global $titulo;
global $foto;
global $data;
global $id;
global $pagina;

/* Agor vai complicar porque rola paginação e é um pé no saco paginação! */

// define o número de registros exibidos por página
$num_por_pagina = 3; 

// descubre o número da página que será exibida
// se o numero da página não for informado, definir como 1
if (!$pagina) {
   $pagina = 1;
}
// query   
$sql = "SELECT COUNT(*) FROM fotos"; 
list($total_usuarios) = mysql_fetch_array(mysql_query($sql));
$total_paginas = $total_usuarios/$num_por_pagina;

$prev = $pagina - 1;
$next = $pagina + 1;
// se página maior que 1 (um), então temos link para a página anterior
if ($pagina > 1) {
$prev_link = "<a href=\"$PHP_SELF?pagina=$prev\">Anterior</a>";
} else { // senão não há link para a página anterior
$prev_link = "Anterior";
}

// se número total de páginas for maior que a página corrente, então temos link para a próxima página
if ($total_paginas > $pagina) {
$next_link = "<a href=\"$PHP_SELF?pagina=$next\">Próxima";
} else { // senão não há link para a próxima página
$next_link = "Próxima";
}
$total_paginas = ceil($total_paginas);
$painel = "";
for ($x=1; $x<=$total_paginas; $x++) {
  if ($x==$pagina) { // se estiver na página corrente, não exibir o link para visualização desta página
    $painel .= "[$x] ";
  } else {
    $painel .= " <a href=\"$PHP_SELF?pagina=$x\">[$x]</a>";
  }
}


// exibir painel na tela
echo "<div class=\"paginacao\">";
echo "$prev_link | $painel | $next_link</a><td><tr>";
echo "</div>";




// construi uma cláusula SQL "SELECT" que nos retorne somente os registros desejados
// definir o número do primeiro registro da página. Faça a continha na calculadora que você entenderá minha fórmula.
$primeiro_registro = ($pagina*$num_por_pagina) - $num_por_pagina;

// consulta apenas os registros da página em questão utilizando como auxílio a definição LIMIT.
// Ordene os registros pela quantidade de pontos.
$sql = "SELECT * FROM fotos ORDER BY id_fotos DESC LIMIT $primeiro_registro, $num_por_pagina"; 

 // executar query
$res = mysql_query($sql);
echo "<br>";
// exiba os registros na tela
while ($lista = mysql_fetch_array($res)) {
//converte data
        $data = substr($lista['fotos_data'],8,2) . "/" .substr($lista['fotos_data'],5,2) . "/" . substr($lista['fotos_data'],0,4);     
        $id = $lista['id_fotos'];    
        $titulo = $lista['fotos_titulo'];
        $foto = $lista['fotos_foto'];

        /* Concateno a exibição de 1 foto */
        
        $exibicao = "<td>";
        $exibicao .= "<div align=\"center\" class=\"fotoslink\">";    
        $exibicao .= "<a href=\"fotos.php?id=$id\" alt=\"Clique aqui e veja mais!\">";
        $exibicao .= "<b>$titulo...</b> <br>";
        $exibicao .= "<img src=\"fotos/" .$foto. ".jpg\" widith=\"70\" height=\"70\" border=\"0\">";
        $exibicao .= "<br>";
        $exibicao .= "$data";
        $exibicao .= "</a>";
        $exibicao .= "<br><br>";
        $exibicao .= "</div>";

        /* Loop para exibir 3 fotos por linha */
        echo "$exibicao";
        }
}

Editado por ESerra
Utilize as tags [code] [/code]
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,1k
    • Posts
      651,9k
×
×
  • Criar Novo...