Paginação de um select no PHP
Galerinha to com um problema de argumentos na função fetch_assoc()
<html>
<head>
<title>Paginaçao</title>
<style type="text/css">
body { font-family: Verdana; font-size: 12px; }
a { font-family: Verdana; font-size: 12px; color: #000000; text-decoration: none; }
a:hover { color: #FE5400; text-decoration: none; }
</style>
</head>
<body>
<FORM method="post">
Palavra: <INPUT name="palavra">
<INPUT type="submit" value="Buscar">
</FORM>
<?
$id = mysql_connect("localhost", "user", "123mudar"); //abre a conexao com o banco de dados
mysql_select_db("bd_busca", $id)or die (mysql_error()); //seleciona o banco de dados
if(!empty($HTTP_POST_VARS['palavra'])) { // posta uma variável para outro lugar
$palavra = str_replace(" ", "%", $HTTP_POST_VARS[palavra]); //recebe a variavel 'palavra' e manda para $palavra
$link_p_pag = 10;
$reg_p_pag = 10;
$pag = $_GET['pag'];
$busca = mysql_query("SELECT count(ART_ID) FROM ART_ARTIGOS WHERE ART_CONTEUDO LIKE '%$palavra%'");
$registros = mysql_result($busca,0);
echo $palavra;?>
<b><<==Apenas teste para saber se a variável $palavra esta passando corretamente</b><br>
<?
echo "Número de registros: ";
echo $registros;
echo "<br>";
$num_total_paginas = ($registros%$reg_p_pag==0)?$registros/$reg_p_pag:floor($registros/$reg_p_pag)+1;
echo "Número de páginas: ";
echo $num_total_paginas;
echo "<br>";
echo "Links por página: ";
echo $link_p_pag;
echo "<br>";
echo "Registros por páginas: ";
echo $reg_p_pag;
echo "<br>";
echo "<hr>";
if ($pag>$num_total_paginas)
echo "Error<br><br>";
else
if (!$pag)
$pag = 1;
$inicio = ($reg_p_pag*$pag)-$reg_p_pag;
echo "Inicia em: $inicio<br><br>";
$query = "SELECT ART_ID, ART_TITULO FROM ART_ARTIGOS WHERE ART_CONTEUDO LIKE '%$palavra%' ORDER BY id LIMIT $inicio, $reg_p_pag";
$resultado = mysql_query($query,$id);
echo $resultado;
while ($linha = mysql_fetch_assoc($resultado))
{
$id = $linha['ART_ID'];
$texto = $linha['ART_TITULO'];
echo $id;
echo " - ";
echo $texto;
echo "<br>";
}
echo "<hr><br>";
$anterior = $pag-1;
if ($anterior<1)
echo "Anterior - ";else
echo "<a href=\"{$_SERVER['PHP_SELF']}?pag=$anterior\">Anterior</a> - ";
for($i=1; $i<$pag; $i++)
if($i>=$pag-$link_p_pag)
echo "<a href=\"{$_SERVER['PHP_SELF']}?pag=$i\">$i</a> - ";
echo "<b>$pag</b>";
for($i=$pag+1; $i<=$num_total_paginas; $i++)
if($i<=$pag+$link_p_pag)
echo " - <a href=\"{$_SERVER['PHP_SELF']}?pag=$i\">$i</a>";
$proxima = $pag+1;
if ($proxima>$num_total_paginas)
echo " - Próxima";else
echo " - <a href=\"{$_SERVER['PHP_SELF']}?pag=$proxima\">Próxima</a>";
}
?>
</body>
</html>Discussão (8)
Carregando comentários...