Fóruns sobre PHP, JavaScript, HTML, MySQLi, jQuery, Banco de Dados, CSS


Moderador: web

 
Avatar do usuário
ADMIN
ADMIN
Tópico Autor
Mensagens: 17584
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Paginação mysql ( com ordenação de dados )

26-03-2007 00:02

Script de paginação de dados do mysql com as seguintes opções:
- Listagem com opção de anterior(es) e próxima(s) páginas;
- Exibe em ordem crescente ( individualmente ) a ordem dos dados;
- Mostra um resumo da consulta.

<table border=0> <tr> <td>Posição</td> <td>ID</td> </tr> <?php $dbhost="localhost"; /* servidor */ $dbuser="teste"; /* usuário do banco de dados */ $dbpasswd="teste"; /* senha do banco de dados */ $dbname="teste"; /* nome do banco de dados */ /* abaixo abrimos a conexão com os dados acima */ $conexao = @mysql_connect($dbhost, $dbuser, $dbpasswd) or die ("não foi possível a conexão, verifique os dados."); $db = @mysql_select_db($dbname) or die ("não foi possível o acesso ao banco de dados $dbname."); /* nome da tabela onde está os nosso valores */ $tabela="agenda"; /* pegamos todos os dados da tabela ordenando em ordem crescente por nome */ $sql=mysql_query("SELECT * FROM $tabela ORDER BY code ASC"); $total=mysql_num_rows($sql); /* declaração da página inicial */ if($_GET['pagina']=="") { $pagina="1"; } else { $pagina=$_GET['pagina']; } /* quantos registros por página */ $maximo="2"; if($pagina=="" || $pagina=="1") { $valor = 0; } else { $valor = $_GET['valor']; } /* calcula o registro inicial */ $inicio=$pagina-1; $inicio=$maximo*$inicio; /* base do script */ $query=mysql_query("SELECT * FROM $tabela ORDER BY code ASC LIMIT $inicio,$maximo"); /* início da mostragem de dados */ while($dados=mysql_fetch_array($query)) { $valor++; ?> <?php echo "<tr>"; echo "<td>$valor º</td>"; // code é o campo da tabela a ser mostrado na consulta echo "<td>".$dados['code']."</td>"; echo "</tr>"; ?> <?php } ?> </table> <?php /* calcula a página anterior */ $menos=$pagina-1; /* calcula a página posterior */ $mais=$pagina+1; /* calculo da mostragem das páginas */ $p_ini=$mais-1; $p_ini=$maximo*$p_ini; /* início da mostragem das páginas */ $p_query=mysql_query("SELECT * FROM $tabela ORDER BY code ASC LIMIT $p_ini,$maximo"); $p_total=mysql_num_rows($p_query); /* mostragem do página anterior e posterior */ if($menos>0) { $volta = $_GET['valor']-$maximo; echo "<a href=\"?pagina=$menos&valor=$volta\">anterior(es)</a> "; } if($p_total>0) { echo " | $pagina | "; echo "<a href=\"?pagina=$mais&valor=$valor\">proxima(s)</a>"; } ?> <?php /* resumo do armazenado no bd */ print <<< HERE <center> Existe $total dados nesse bd. <br> Estamos mostrando $maximo por página. </center> HERE; ?> <?php mysql_close($conexao); ?>

0
A melhor hospedagem para o seu site HostGator!

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado