Jump to content


Photo

Tutorial: Paginação


  • Faça o login para participar
Nenhuma resposta neste tópico

#1 DsMachado

DsMachado

    Novato no fórum

  • Usuários
  • 12 posts
  • Sexo:Não informado

Posted 08/07/2009, 22:38

Ae galera... essi aih eh um simples tutorial que desenvolvi para voces que estão a procura de uma paginação simples!!!
O script está bem comentado...qualquer duvida postem aew ou entre em contato pelo meu e-mail: dsmachado_36@hotmail.com!

conexao.php
<?php
//**************************************//
// Desenvolvido por: Diego Souza Machado//
// Email: dsmachado_36@hotmail.com	  //
//**************************************//

$myhost="localhost";
$myporta="3306";
$myuser="usuario";
$mysenha="senha";
$mybanco="seu_banco";
$myhosteporta=$myhost . ":" . $myporta;
$con=mysql_connect($myhosteporta,$myuser,$mysenha) or die("Não foi possível a conexão, erro: ".mysql_error());
mysql_select_db($mybanco,$con) or die("Não conseguiu selecionar o banco, erro: ".mysql_error());
?>

paginacao.php

<?php
//**************************************//
// Desenvolvido por: Diego Souza Machado//
// Email: dsmachado_36@hotmail.com	  //
//**************************************//


// error_reporting(E_ALL ^ E_NOTICE); // tira os "notice" que aparece - se quiser usar retire as barras do começo
include "../conexao/conexao.php";

$tabela = "sua_tabela"; // altere aqui sua tabela do banco de dados

$limite = 10; // limite de registros por pagina
$pag = 0; // valor padrao se nao for enviado nenhum valor via metodo GET
$pag_atual = $_GET["pag_atual"]; // recebe o valor enviado pelo metodo GET
if (!$pag_atual) {	
	$pag_atual = $pag;
} else {
	$pag_atual = $pag_atual;
}
// sql que pega o resultado total de registro
$sql2 = mysql_query("SELECT * FROM $tabela") or die();
$resultado2 = mysql_num_rows($sql2);
// fim sql

// sql que pega o tatal que esta sendo exibido e repete os resultados
$sql = mysql_query("SELECT * FROM $tabela LIMIT $pag_atual, $limite") or die();
$resultado = mysql_num_rows($sql);

echo "foram encontrados $resultado resultados, de $resultado2<br />";
while ($linha = mysql_fetch_array($sql)) {
$campo1 = $linha["seu_campo"]; // campos que vao repetir na função while... copie, cole e renomeie para fazer outro
$campo2 = $linha["seu_campo2"];
echo "$campo1 - $campo2<br />";
}
// fim sql


// inicio paginação
$ultima = intval($paginas*$limite); // define o valor da ultima pagina
$anterior = $pag_atual-$limite; // define o valor da pagina anterior a atual

if ($anterior < 0) { // se anterior for menor que 0, ele exibe apenas os nomes sem link
echo "Primeira - Anterior - ";
} else { // senao ele exibe os links
echo " <a href=index.php?pag_atual=0>Primeira - </a>";
echo " <a href=index.php?pag_atual=$anterior>Anterior - </a>";
}

$proxima = intval($pag_atual+$limite); // define o valor da proxima pagina
if ($proxima > $resultado2) { // não deixa o link passar do total de registros
echo "Proxima - Ultima";
} else {
echo " <a href=index.php?pag_atual=$proxima>Proxima - </a>";
echo " <a href=index.php?pag_atual=$ultima>Ultima</a>";
}
?>

Vlw!!

Diego Souza Machado




1 user(s) are reading this topic

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

IPB Skin By Virteq