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

Paginação Ajuda


sorocabaunderground

Pergunta

ola

estou querendo fazer paginação.

eu tenho uma parte em meu site em PHP q cadastra novas entrevistas, é no index eu estou mostrando as 10 ultimas cadastradas.

so q eu queria fazer uma paginação de 10 em 10

cada pagina mostra 10 entrevistas

alguém ae pode me dar uma luz, mostrando um codigo??

ou uma ajuda?

agradeço

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Cara, da uma olhadinha em scripts, vê um código, pega a lógica e tenta aplicar, qualquer coisa fala ae... porque senops, complica heheh mas mesmo assim vou tentar te passar uma lógica bem comun...

Inicialmente tu precisas de duas variáveis, uma para o conteúdo a ser buscado e outra com o número de controle de páginas. Essas variáveis serão passadas inicialmente por POST (o conteúdo a ser buscado vem de um formulário, suponho eu...) e nada como número de controle de páginas... então, tu precisas atribuir um número mágico pra ela... (0 hehe par poder buscar desde o primeiro registro). Após a primeira execução do código (que é logo q vem do formulário) tu vais ter que passar esses códigos de alguma forma para essa mesma page, eu normalmente utilizo querystring (portanto recebo as vars com o GET). Para controlar isso utilize um if.

if(isset($_POST['query'])){

  $var_busca_bd = addslashes($_POST['query']);

  $pagina = 0;

}

else{

  $var_busca_bd = addslashes($_GET['query']);

  $pagina = addslashes($_GET['pagina']);

}

Beleza, agora tu precisas te acertar com o teu SQL, faça a sua consulta normalmente e utiliza o LIMIT que possiu a seguinte sintaxe:

SELECT * FROM `tabela` WHERE `campo` = 'valor' LIMIT inicio, qtd;

Onde:

inicio = numero do registro que tu queres começar a busca;

qtd = quantidade de registros que tu queres retornar a partir de inicio;

Beleza, agora já conseguimos pegar de 10 em 10 né???

... LIMIT $pagina, 10;

Bom, para que funcione corretamente, precisamos saber quantos registros temos ao todo para poder saber o numero de páginas.

Para isso, execute um SQL sem o LIMIT, mas com o WHERE (simplificando, a mesma q a explicada anteriormente sem o LIMIT).

Agora execute a função mysql_num_rows();, pronto, temos o total de registros...

Para saber o numero total de páginas uma simples continha resolve....

Total de páginas = totalde registros / quantidade de registros exibidos por páginas.

No PHP:

$num_pag = floor($tot_registros / 10);

Floor() foi utilizada porque pode resultar um número float.

Ok, partindo desse princípio, fica fácil fazer um for para gerar o menu com os links para trocar de páginas....

echo '<a href="'.$_SERVER['PHP_SELF].'?query='.$var_busca_bd.'&pagina='.$pagina.'">&nbsp;'.$i.'&nbsp;</a>';

Qualquer dúvida manda ae...

Ajudei ou atrapalhei???

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,3k
    • Posts
      652,6k
×
×
  • Criar Novo...