Ir para conteúdo
Fórum Script Brasil
  • 0

Paginação Com Subcategorias


Naty_Za

Pergunta

Pessoal, adaptei um código de paginação no meu site!!!

em uma página que mostre todos os registros do banco de um vez só, ele funciona perfeitamente..

mas no meu caso, meu site é divido em categorias.. e cada categoria tem uma quantidade de registros.

ex:

meu banco tem 500 registros...

e em cada categoria eu quero que apareça somente a quantidade que foi destinada a ela...

mas não está acontecendo.. quando clico em alguma categoria, ele mostra todos os registros, dividos por páginas, mas mostra todos.. e eu quero que mostre somente os daquela determinada categoria....

vou postar meu código pra entenderem melhor:

<?
include("config.php");

$link_p_pag = 5;
$reg_p_pag = 10;
$pag = $_GET['pag'];

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

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 * FROM cadastros ORDER BY id LIMIT $inicio, $reg_p_pag";
$result = @mysql_query($query);

while ($row = mysql_fetch_assoc($result))
{
  $id = $row['id'];
  $titulo = $row['titulo'];
$classe = $row["classe"];
$servicos = $row["servicos"];
$endereco = $row["endereco"];
$cidade = $row["cidade"];
$estado = $row["estado"];
$tel = $row["tel"];
$email = $row["email"];
$http = $row["http"];

  echo"
<font face=Verdana, Arial, Helvetica, sans-serif><font size=1><strong><a href=\"http://$http\"
target=\"_blank\" >$titulo</strong></a></strong><br></font>
<i>$servicos</i><BR>
$endereco<BR>
$cidade - $estado<BR>
Tel: $tel<BR>
Email: <a href=mailto:$email>$email</a><BR><BR>
";
}

echo "<hr><br>";

$anterior = $pag-1;
if ($anterior<1)
echo "Anterior - ";
else
echo "<a href=\"{$_SERVER['PHP_SELF']}?id_submenu=".$_GET['id_submenu']."&pag=$anterior\">Anterior</a> - ";

for($i=1; $i<$pag; $i++)
if($i>=$pag-$link_p_pag)
echo "<a href=\"{$_SERVER['PHP_SELF']}?id_submenu=".$_GET['id_submenu']."&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']}?id_submenu=".$_GET['id_submenu']."&pag=$i\">$i</a>";

$proxima = $pag+1;
if ($proxima>$num_total_paginas)
echo " - Próxima";
else
echo " - <a href=\"{$_SERVER['PHP_SELF']}?id_submenu=".$_GET['id_submenu']."&pag=$proxima\">Próxima</a>";
?>

O que tem de errado???

Me ajudem pessoal.. por favor!!!!!!!!!!

Valeeww

Alguém sabe???????????????

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

é verdade ESerra!!!!!!!!!!

coloquei meu select assim então:

$query = "SELECT * FROM cadastros WHERE classe= $id_submenu ORDER BY id LIMIT $inicio, $reg_p_pag";
e deu certinhoooo só que agora surgiu outra dúvida: na categoria 116, tem só 25 registros.. e a quantidade de página que mostra é a de todos os registro do banco... tem 500 registros ao todos no banco.. dando umas 50 páginas... e como na categoria só tem 25, era pra habilitar somente até a página 3.. mas não, habilita todas.. e daí quando clica não aparece nada, afinal, não tem mais registros praquela categoria.. mas eu queria que aparecesse a quantidade certa de páginas de acordo com a quantidade de registros praquela categoria.. como posso fazer?????/ Valleww Pesquisei e consegui fazer!!!!!!!!!! era so trocar:
$busca = mysql_query("SELECT count(*) FROM cadastros;");
por:
$busca = mysql_query("SELECT count(*) FROM cadastros WHERE categoria= $id_categoria;");

Valewww

Editado por Naty_Za
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,7k
×
×
  • Criar Novo...