Jump to content


Photo

Paginação De Resultados


  • Faça o login para participar
2 replies to this topic

#1 ggiovanii

ggiovanii

    Normal

  • Usuários
  • 60 posts
  • Sexo:Masculino
  • Localidade:PIRA
  • Interesses:HTML, Hardware, Software, Sites, PHP, ASP, Banco de Dados...

Posted 25/05/2009, 10:34

Bom dia Pessoal!!!

Atualmente uso o script abaixo para fazer a paginação de resultados...

<?
include"config.php"; //Arquivo de Conexao com o banco



$link_p_pag = 4;
$reg_p_pag = 4;
$pag = $_GET['pag'];

$busca = mysql_query("SELECT count(*) FROM promocao2009;");
$registros = mysql_result($busca,0);



$num_total_paginas = ($registros%$reg_p_pag==0)?$registros/$reg_p_pag:floor($registros/$reg_p_pag)+1;



if ($pag>$num_total_paginas)
echo "Error<br><br>";
else

if (!$pag)
$pag = 1;

$inicio = ($reg_p_pag*$pag)-$reg_p_pag;

$y = mysql_query ("SELECT * FROM promocao2009 ORDER BY id LIMIT $inicio, $reg_p_pag");
$result = @mysql_query($y);

while($x = mysql_fetch_array($y)){

echo'

AQUI VAI O HTML COM AS VARIAVEIS PARA MOSTRAR O CONTEUDO DAS INFORMAÇÕES DO BANCO DE DADOS.



'; } echo "<br>
";
echo "<center>";
$anterior = $pag-1;
if ($anterior<1)
echo "<font size=1 face=verdana color=#333333></font>";
else
echo "<a href=\"{$_SERVER['PHP_SELF']}?pag=$anterior\"><font size=1 face=verdana color=#333333><< Anterior</font></a> - ";

for($i=1; $i<$pag; $i++)
if($i>=$pag-$link_p_pag)
echo "<a href=\"{$_SERVER['PHP_SELF']}?pag=$i\"><font size=1 face=verdana color=#333333>$i</font></a> - ";

echo "<b><font size=1 face=verdana color=#333333>$pag</font></b>";

for($i=$pag+1; $i<=$num_total_paginas; $i++)
if($i<=$pag+$link_p_pag)
echo " - <a href=\"{$_SERVER['PHP_SELF']}?pag=$i\"><font size=1 face=verdana color=#333333>$i</font></a>";

$proxima = $pag+1;
if ($proxima>$num_total_paginas)
echo "<font size=1 face=verdana color=#333333></font>";
else
echo " - <a href=\"{$_SERVER['PHP_SELF']}?pag=$proxima\"><font size=1 face=verdana color=#333333> - Próxima >></font></a>";



?>


O código tah funcionando legal.... mas eu gostaria de implantar aquele recurso: " IR PARA ULTIMA PAGINA" ou "VOLTAR À PRIMEIRA PAGINA" << | >>


Como fazer ? alguem já fez ?


Valew pessoal!!

#2 Goku Jr

Goku Jr

    Nilson

  • Usuários
  • 3757 posts
  • Sexo:Masculino

Posted 25/05/2009, 11:06

Primeira pagina
echo "<a href=\"{$_SERVER['PHP_SELF']}?pag=0\"><font size=1 face=verdana color=#333333>PRIMEIA PAGINA</font></a> - ";

Última pagina
echo "<a href=\"{$_SERVER['PHP_SELF']}?pag=$num_total_paginas\"><font size=1 face=verdana color=#333333>ÚLTIMA PAGINA</font></a> - ";


Em vermelho foi onde eu alterei...

Pq?

primeira pagina: sempre inicia com 0
e se você quer ir pra última página logicamente você tera que pegar a ultima pagina da paginação
T+

Edição feita por: Goku Jr, 25/05/2009, 11:11.

-----------------------------------------------------------------------
PALMEIRAS - Primeiro campeão do mundo em 1951

#3 Marcus Nunes

Marcus Nunes

    Turista

  • Usuários
  • 51 posts
  • Sexo:Masculino

Posted 25/05/2009, 13:09

A primeira página não muda nunca, é sempre a primeira.

A última, você calcula assim:

- Arredonda com ceil o total de registros dividido pelo total a ser mostrado por página.

ex:
$ultimapag = ceil($total/$totpag);




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq