Antes disso, precisamos entender o que é paginação.
Paginação de resultado é algo bem simples,
Fazemos uma busca em determinada tabela do DataBase, e com o resultado da busca, dividimos o número de registros, por um número especifico para exibir por página.
Por exemplo um total de 200 registros, e nós queremos exibir 20 por página, logo teremos 200/20 = 10 páginas.
Simples, não?
Bom vamos lá para o código então.
Primeiramente realize a conexão ao MySQL:
<?php
$conn = mysql_connect("host","usuario","senha");
$db = mysql_select_db("bancodedados");
?>
Agora vamos criar a cláusula SQL que deve ser executada:
<?php
$busca = "SELECT * FROM tabelax";
?>
Vamos ao trabalho... Especifique o total de registros a serem exibidos por página:
<?php
$total_reg = "10"; // número de registros por página
?>
Se a página não for especificada a variável "pagina" tomará o valor 1, isso evita de exibir a página 0 de início:
<?php
if (!$pagina) {
$pc = "1";
} else {
$pc = $pagina;
}
?>
Vamos determinar o valor inicial das buscas limitadas:
<?php
$inicio = $pc - 1;
$inicio = $inicio * $total_reg;
?>
Vamos selecionar os dados e exibir a paginação:
<?php
$limite = mysql_query("$busca LIMIT $inicio,$total_reg");
$todos = mysql_query("$busca");
$tr = mysql_num_rows($todos); // verifica o número total de registros
$tp = $tr / $total_reg; // verifica o número total de páginas
// vamos criar a visualização
while ($dados = mysql_fetch_array($limite)) {
$nome = $dados["nome"];
echo "Nome: $nome<br>";
}
// agora vamos criar os botões "Anterior e próximo"
$anterior = $pc -1;
$proximo = $pc +1;
if ($pc>1) {
echo " <a href='?pagina=$anterior'><- Anterior</a> ";
}
echo "|";
if ($pc<$tp) {
echo " <a href='?pagina=$proximo'>Próxima -></a>";
}
?>
Prontinho
Nossa paginação está criada!
Vitor Yudi Hansen