Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

fsales_123

Problema na paginação

Recommended Posts

Exemplo:" E tenho diversas categorias, por exemplo: "Todos os Jogos", "Xbox 360", "Playstation 3", "PC". Em "Todos os Jogos", eu exibo todos os jogos, assim funcionando corretamente o sistema, mostrando 6 numeros de paginas. Porém, se eu acesso Xbox 360, ele continua mostrando os 6 numeros, ele não calcula a quantidade de jogos daquela categoria, e sim ao todo. Porém sem sucesso, onde eu poderia modificar o codigo para chegar neste resultado?"

 <?php
$pagina = $_GET['pag'];
if(!$pagina){
  $pagina = 1;
}
// Defina aqui a quantidade de resultados a serem exibidos em cada página
$limite = 15;	

// FAÇA UMA BUSCA SIMPLES NA SUA TABELA
$cont = mysql_query("SELECT * FROM anuncios");

$total_registros = mysql_num_rows($cont); // Aqui você conta o total de registros da tabela
$total_paginas = ceil($total_registros / $limite); // Aqui divide o total de registros pelo limite de registros a serem exibidos para obter o total de páginas a serem exibidas



//Abaixo você vai fazer a equação que deverá 
$inicio = ($pagina * $limite) - $limite;


// AQUI VAI O SEU CÓDIGO
if(@$_POST){
			$sql = mysql_query("SELECT * FROM anuncios WHERE descricao LIKE '%".$_POST["query"]."%' ORDER BY ID DESC LIMIT $inicio,$limite");
	}else{
 
		if(empty($_GET["categoria"])){
			$sql = mysql_query("SELECT * FROM anuncios WHERE status = 'Ativo' AND ID ORDER BY RAND() LIMIT $inicio,$limite");
		}else{
			$sql = mysql_query("SELECT * FROM anuncios WHERE categoria = '".strip_tags($_GET["categoria"])."' AND status = 'Ativo' ORDER BY nome ASC LIMIT $inicio,$limite");
		}
	}
	
			if(mysql_num_rows($sql) == false){
				echo '<div align="center"><br /><strong>Nenhum anúncio encontrado.</strong><br /></div>';
				
			}else{
				
				while($ln = mysql_fetch_object($sql)){
					
	?>
      </p>
      <table width="100%" height="50" border="0">
        <tr>
          <td width="2%" height="110" align="center" valign="middle"><img src="uploads/<?php echo $ln->thumb; ?>" width="140" height="90" /></td>
          <td width="98%" align="left" valign="top">
          <div align="left" style="margin:5px; color:#333; font-size:11px;">Nome da Empresa: <strong><?php echo $ln->empresa; ?></strong></div>
            <div align="left" style="margin:5px; color:#333; font-size:11px;"><?php echo truncate(strip_tags($ln->descricao), 50); ?>...</div>
            <div align="left" style="margin:5px; color:#333; font-size:11px;">Telefone: <strong><?php echo $ln->telefone; ?></strong></div>
            <div align="left" style="margin:5px; color:#333; font-size:11px;">Enviado por: <strong><?php echo $ln->nome; ?></strong></div>
            <div align="left" style="margin-left:5px; margin-top:10px;"><a href="javascript: ver_anuncio(<?php echo $ln->ID; ?>);" class=" anuncio" style="text-decoration:none;">Ver anúncio</a></div>
          </td>
        </tr>
      </table>
      <?php
			}
			?>
      <?php
				}
				?>
                
               <?php // Abaixo, um loop para exibir o link para as próximas páginas
for($i=1; $i <= $total_paginas; $i++)
{
    echo "<a href='index.php?pag=$i'>".$i."</a> ";
}

echo "<hr width='100%'>"."Você está atualmente na página: ".$pagina."<hr width='100%'>";
?>
    </td>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Abaixo você faz o calculo de quantos produtos tem na tabela pra efetuar a paginação certo?

// FAÇA UMA BUSCA SIMPLES NA SUA TABELA
$cont = mysql_query("SELECT * FROM anuncios");

$total_registros = mysql_num_rows($cont); // Aqui você conta o total de registros da tabela
$total_paginas = ceil($total_registros / $limite); // Aqui divide o total de registros pelo limite de registros a serem exibidos para obter o total de páginas a serem exibidas

Se quer paginar as categorias, tem que passar o parâmetro da categoria na clausula acima.

Compartilhar este post


Link para o post
Compartilhar em outros sites

A grosso modo, seria isto.

if(empty($_GET["categoria"])){
	$cont = mysql_query("SELECT * FROM anuncios")
}else{
	$cont = mysql_query("SELECT * FROM anuncios WHERE categoria = '".strip_tags($_GET["categoria"])."'")

}

alguém me ajuda...

E não fique floodando seu próprio tópico, dando up, espere

Compartilhar este post


Link para o post
Compartilhar em outros sites


<?php

$pagina = $_GET['pag'];

if(!$pagina){

$pagina = 1;

}

// Defina aqui a quantidade de resultados a serem exibidos em cada página

$limite = 15;

 

// FAÇA UMA BUSCA SIMPLES NA SUA TABELA

if(empty($_GET["categoria"])){

$cont = mysql_query("SELECT * FROM anuncios")

}else{

$cont = mysql_query("SELECT * FROM anuncios WHERE categoria = '".strip_tags($_GET["categoria"])."'")

 

}

 

$total_registros = mysql_num_rows($cont); // Aqui você conta o total de registros da tabela

$total_paginas = ceil($total_registros / $limite); // Aqui divide o total de registros pelo limite de registros a serem exibidos para obter o total de páginas a serem exibidas

 

//... Restante do codigo ...

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.