iMasters Fóruns: Busca com paginação - iMasters Fóruns

Ir para

Página 1 de 1
  • Novo tópico
  • Responder

Busca com paginação

#1 Membro offline   Alisson Schneider Ícone

  • Ícone
  • Grupo: Membros
  • Posts: 5
  • Cadastrado: 04-novembro 09

Postou 04 novembro 2009 - 20:26

essoal eu estou fazendo uma página de busca aonde o usuario busca produtos e tem um pequeno problema eu mando exibi 4 registros por págia.

Exemplo:

o cara busca hd por exemplo dai digamos que tenha 8 hds disponiveis quando o usuario vai ver a busca aparece 4 hds na primeira pagina e um link de proxima página para ele ver os outros 4 mas quando ele clica no link de proxima página ele ignora a palavra da busca e joga todos os produtos da minha tabela de produtos do banco de dados.


t+

abrass

meu codigo é o seguinte

<?php	
echo "<br><br>";
include ('libs/Condesc.php');
include ('libs/Estilo.php');
include ('libs/valor_formata.php');

     $pag_atual = $_GET['buscar'];

$campos_query = "*";  
$final_query  = "FROM Produtos WHERE Nome LIKE '%$pag_atual%' OR Descricao LIKE '%$pag_atual%'";


$pagina = $_GET["pagina"];
if($pagina == "") {
   $pagina = "1";
}

// Maximo de registros por pagina  
$maximo = 4;

// Calculando o registro inicial  
$inicio = $pagina - 1;  
$inicio = $maximo * $inicio;

// Conta os resultados no total da minha query  
$strCount = "SELECT COUNT(*) AS 'num_registros' $final_query";
$query    = mysql_query($strCount);
$row=mysql_fetch_array($query);
$row2=utf8_encode($row);
$total    = $row["num_registros"];  

if($total==0) {  
?>
<script>
open('busca_erro.php', target='pri');
</script>
	<?
	$pro=0;
	?>
	<?		
} else {  
    $strQuery = "SELECT $campos_query $final_query LIMIT $inicio,$maximo";  
    $query    = mysql_query($strQuery);
				?>
				<h3>Busca efetuada com sucesso</h3>
<font face="Arial" size="2" color=gray>Os registros encontrados para a busca foram os seguintes:</font><br><br><br>
				<?php
			while($linha=mysql_fetch_array($query)){
				$id		=$linha["CodProduto"];
				$nome		=$linha["Nome"];
				$descricao      =$linha["Descricao"];
				$marca		=$linha["Marca"];
				$valor		=$linha["Valor"];
				$foto		=$linha["Foto"];
				$categoria	=$linha["Categoria"];
				$promocao	=$linha["Promocao"];
				$lancamento	=$linha["Lancamento"];
				$qtd            =$linha["QuantEstoque"];
					if($lancamento==1){
					$esta="<img src='Imagens/lanca.png' border='0' alt='Lançamento' />";
					}
					else{
					$esta="";
					}
					if($promocao==1){
					$promo="<img src='Imagens/promo.png' border='0' alt='Promoção' />";
					}
					else{
					$promo="";
					}
					?>

				<!-- ***************INÍCIO DA TABELA DOS PRODUTOS -->
				<table width=540 height=1 border=0 cellspacing=0 cellpadding=0>
				<tr bgColor="#FFFFFF">
					<td align="left" width="100"><img src="Imagens/<?php echo $foto; ?>" border="0" width="80" height="80" /></td>
					<td width=5>
					<td  width="280" height=0>
					<table border=0>
					<tr>
					<td>&nbsp;&nbsp;&nbsp;<? echo "<font face='Bitstream Vera Sans' size=3 color=black><b> $nome";?></td>
					</tr>
					<tr>
					<td>
					&nbsp;&nbsp;&nbsp;<font face='Bitstream Vera Sans' size=2 color=black><b><?php echo FormatarValor($valor);?></td>
					</tr>
					<tr>
					<td>
					&nbsp;&nbsp;&nbsp;<font face="Bitstream Vera Sans" size=2 color=black><b>Quantidade no Estoque:</b></font>&nbsp;&nbsp;&nbsp;<font face='Bitstream Vera Sans' size=2 color=black   style='line-height:25px;'><b><?php echo $qtd;?></td>
					</tr>
					<tr onclick="window.location.href='visualizar_produto.php?id=<?php echo $id; ?>'">
					<td>&nbsp;&nbsp;&nbsp;&nbsp;<img src="Imagens/ver.png" border=0></td>
					</tr>
					</table>
					</td>
					<td align="center" width="115"><?php echo $lanc ?><?php echo $promo ?></td>
				</tr>
				
				<tr>
					<td colspan="6"><hr color='black'></td>
				</tr>
				</table>
				<table border=0 cellspacing=0 cellpadding=0 width=520 >
      <tr>
        <td>
        <center>
			<?php
        			}		
        			}
// Calculando pagina anterior  quecedor
    $menos = $pagina-1;  

// Calculando pagina posterior  

    $mais = $pagina + 1;
$pgs = ceil($total / $maximo);
   if($pgs > 1 ) {  
         // Mostragem de pagina  
         if($menos > 0) {  
            echo "<div align=center><b><a href=\"?pagina=$menos\" class=link2><font size=2 face=Verdana,Arial>Página Anterior</font></a></b></div>";  
         }
         ?>
         </td>
         <td width=200 align=center>
         <?
    
        // Listando as paginas  
        
        for($i=1;$i <= $pgs;$i++) {  
            if($i != $pagina) {  	
            			
            $descricao=$linha["Descricao"];
               echo " <font face='Bitstream Vera Sans' size=2 color=black ><a href=\"?pagina=".($i)."?pag_atual=cd\" style='text-decoration:none;'>$i</font></a>";  
            } else {  
                echo " <strong class='texto_paginacao_pgatual'><font face=Verdana size=2>".$i."</font></strong>";
            }  
        }  
         ?>
         </td>
         <td width=150>
         <?
         
        if($mais <= $pgs) {  
           echo "<div align=center><a href=\"?pagina=$mais\"  class='link2'><font size=2 face=Verdana,Arial><b>Próxima Página</b></font></a></div>";
        }
    }
?>


#2 Membro offline   Mecho com php e Html Ícone

  • Caio Augusto
  • Ícone
  • Grupo: Membros
  • Posts: 186
  • Cadastrado: 13-fevereiro 08

Postou 04 novembro 2009 - 20:39

isso na verdade é php
ao mudar de página, você tem que voltar a passar o valor da busca pela url
nessa parte que tá o erro... faça o mesmo para as página anteriores.
echo " <font face='Bitstream Vera Sans' size=2 color=black ><a href=\"?pagina=".$i."&busca=".$pag_atual."\" style='text-decoration:none;'>".$i."</font></a>";


#3 Membro offline   Alisson Schneider Ícone

  • Ícone
  • Grupo: Membros
  • Posts: 5
  • Cadastrado: 04-novembro 09

Postou 04 novembro 2009 - 20:56

cara eu copiei o teu href e coloquei mas não deu certo não

mas vlw pela ajuda

#4 Membro offline   William Bruno Ícone

  • Ícone
  • Grupo: Moderadores
  • Posts: 5690
  • Cadastrado: 08-janeiro 08
  • Sexo:Masculino
  • Localização:São Paulo - SP

Postou 05 novembro 2009 - 00:58

Tópico Movido:
Javascript / DHTML :seta: PHP

Página 1 de 1
  • Novo tópico
  • Responder

1 usuário(s) está(ão) lendo este tópico
0 membro(s), 1 visitante(s) e 0 membros anônimo(s)