Ir para conteúdo

POWERED BY:

Arquivado

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

Newton

Busca Interna - problemas nos resultados da pesquisa

Recommended Posts

Olá, gostaria de uma ajuda.

 

Fiz uma busca interna para meu site, mas ela esta buscando em todos campos da minha tabela. Minha tabela tem os seguintes campos:

 

tb_name

tb_dec

img

tb_www

categoria

 

Gostaria que os resultados da busca fossem apenas nos dados que eu coloco na tb_name.

Como posso fazer isso?

 

Obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

mostra o que você tá fazendo o codigo que você tá tentando ......... beleza........

 

o SQL que você deveria usar é assim.........

 

$sql = mysql_query("SELECT tb_name from TABELA WHERE ........");

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pensei tb na possibilidade de criar um campo na tabela com palavras chaves para efetuar a busca...mas nao tenho ideia de como fazer isso.

 

Aqui estao os codigos:

 

Formulario

<form id="frm_search" name="frm_search" method="get" action="../html/busca_resultado.php">
            <table width="100%" border="0" cellpadding="00" cellspacing="0">
              <tr>
                <td width="20%" height="36"><div align="center"><img src="../imagens/busca.jpg" width="142" height="24" /></div></td>
                <td width="64%">
                    <div align="left">
                      <input name="title" type = "text" id="title" onfocus = "if (this.value == 'Faça aqui sua busca...') this.value ='';" onblur = "if (this.value =='') this.value = 'Faça aqui sua busca...'; " value = "Faça aqui sua busca..." size="75"/>
                      </div></td>
                <td width="16%">
                  
                  <div align="left">
                    <input type="submit" name="Submit" value="Buscar Empresa" />
                  </div></td></tr>
            </table>
        </form>

Resultado da Busca

<?php if ($totalRows_rs83 == 0) { // Show if recordset empty ?>
                    <strong><img src="../imagens/error_ico2.gif" width="14" height="14" /> <span class="style50">Não encontramos o que você queria, por favor refaça a sua busca</span>. </strong>
                    <?php } // Show if recordset empty ?></p>
              </div></td>
            </tr>
          </table>
          <?php do { ?>
            <table width="95%" border="0" align="center" cellpadding="1" cellspacing="2" class="dados">
                <tr>
                  <td colspan="2"><table width="100%" border="0" cellpadding="0" cellspacing="0">
                    <tr>
                      <td valign="middle" bgcolor="#FFFFFF"><table width="100%" border="0" cellspacing="0" cellpadding="0">
                        <tr>
                          <td width="2%"><img src="../imagens/seta.GIF" width="9" height="9" /></td>
                          <td width="98%" bgcolor="#efefef" class="style60"><?php echo $row_rs83['tb_name']; ?></td>
                        </tr>
                      </table></td>
                      </tr>
                  </table></td>
                </tr>
                <tr>
                  <td width="12%"><img src="<?php echo $row_rs83['tb_img']; ?>" width="61" height="53" /></td>
                  <td width="88%" valign="middle"><div align="justify" class="style62"><?php echo $row_rs83['tb_desc']; ?></div>                  </td>
                </tr>
            
                <tr>
                  <td height="26" colspan="2"><div align="right">
                    <table width="100%" border="0" cellpadding="0" cellspacing="0">
                      <tr>
                        <td bgcolor="#efefef"><div align="left"><a href="#" onclick="window.open( '<?php echo $row_rs83['tb_www']; ?>' , 'janela' , 'width=400,height=600' ); return false;"><span class="style18 style51"><span class="style61">Link:</span></span></a><a href="#" onclick="window.open( '<?php echo $row_rs83['tb_www']; ?>' , 'janela' , 'width=400,height=600' ); return false;"><span class="style18 style51"><?php echo $row_rs83['tb_www']; ?></span></a></div></td>
                        </tr>
                      <tr>
                        <td><div align="center" class="style3">
                          <div align="left"><span class="style55"><span class="style11 style59">categoria</span>:</span><span class="style8 style63"><?php echo $row_rs83['categoria']; ?></span></div>
                        </div></td>
                        </tr>
                    </table>
                  </div></td>
                </tr>
              </table>
            <table width="95%" border="0" align="center" cellpadding="0" cellspacing="0">
              <tr>
                <td> </td>
                </tr>
            </table>
            <?php } while ($row_rs83 = mysql_fetch_assoc($rs83)); ?><!-- InstanceEndEditable --></td>
            </tr>
        </table></td>
      </tr>
      <tr></tr>
      <tr>
        <td height="73" colspan="2" valign="top" background="../imagens/Rodape800.jpg" bgcolor="#efefef"><table width="100%" border="0" cellspacing="1" cellpadding="0">
          <tr></tr>
        </table>
          <table width="100%" border="0" cellspacing="1" cellpadding="0">
            <tr>
              <td width="28%" height="98"> </td>
              <td valign="top"><table width="98%" border="0" align="right" cellpadding="0" cellspacing="1">
                <tr>
                  <td height="24"><div align="right" class="style44"><font color="#000000"> <a href="contato/contact-form.php">Contato</a> | <a href="termos.php">Termos de Uso </a>| <a href="diferenciais.php">Diferenciais</a> | <a href="privacidade.php">Termos de Privacidade </a></font></div></td>
                  </tr>
              </table></td>
              </tr>
          </table></td>
      </tr>
    </table></td>
  </tr>
</table>
</body>
<!-- InstanceEnd --></html>
<?php
mysql_free_result($rs83);
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Posta a estrura do banco "SQL", assim fica mais fácil te ajudarem... agora a uma grande diferença em fazer na unha, do que códigos gerados, tae sua dificuldade!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Posta a estrura do banco "SQL", assim fica mais fácil te ajudarem... agora a uma grande diferença em fazer na unha, do que códigos gerados, tae sua dificuldade!

 

Como eu posto aqui a estrutura? Onde pego essas infos? Lá no phpMyAdmin?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Qual campo você quer buscar? descreve...

 

Posta estrutura do recordset completo

 

desde do

<?php

 

 

a té o final...

?>

 

você só postou o html gerado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Será que é isso?

 

<?php
$busca_Recordset1 = "-1";
if (isset($_GET['busca'])) {
  $busca_Recordset1 = (get_magic_quotes_gpc()) ? $_GET['busca'] : addslashes($_GET['busca']);
}
mysql_select_db($database_busca, $busca);
$query_Recordset1 = sprintf("SELECT * FROM tutorial_126 WHERE tutorial_126.nome LIKE '%%%%%s%%%%' OR tutorial_126.descricao LIKE '%%%%%s%%%%'", $busca_Recordset1,$busca_Recordset1);
$Recordset1 = mysql_query($query_Recordset1, $busca) or die(mysql_error());
$row_Recordset1 = mysql_fetch_assoc($Recordset1);
$totalRows_Recordset1 = mysql_num_rows($Recordset1);
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ve se isto ae

 

<?php
$busca_Recordset1 = "-1";
if (isset($_GET['busca'])) {
  $busca_Recordset1 = addslashes($_GET['busca']);
}
mysql_select_db($database_busca, $busca);
$query_Recordset1 = ("SELECT * FROM tutorial_126 WHERE tutorial_126.nome LIKE '%". $busca_Recordset1 ."%' OR tutorial_126.descricao LIKE '%". $busca_Recordset1 ."%'");
$Recordset1 = mysql_query($query_Recordset1, $busca) or die(mysql_error());
$row_Recordset1 = mysql_fetch_assoc($Recordset1);
$totalRows_Recordset1 = mysql_num_rows($Recordset1);
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não funcionou.

 

Ainda esta aparecendo os resultados errados, ele esta buscando em todos os campos da minha tabela.

Compartilhar este post


Link para o post
Compartilhar em outros sites

<?php

$busca_Recordset1 = "-1";

if (isset($_GET['busca'])) {

$busca_Recordset1 = addslashes($_GET['busca']);

}

mysql_select_db($database_busca, $busca);

$query_Recordset1 = ("SELECT busca FROM tutorial_126 WHERE nome LIKE '%". $busca_Recordset1 ."%'");

$Recordset1 = mysql_query($query_Recordset1, $busca) or die(mysql_error());

$row_Recordset1 = mysql_fetch_assoc($Recordset1);

$totalRows_Recordset1 = mysql_num_rows($Recordset1);

?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Oi macielcr7

 

Tudo bom?

 

Modifiquei o código como você indicou, mas nada, a busca ainda esta buscando em todos os campos da tabela.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não é um problema na busca. Remova as colunas indesejadas do html.

 

Eu não posso tirar as colunas lá do HTML, pois preciso que no resultado apareçam os dados, mas na busca preciso definir qual campo será feito a busca, por exemplo, se eu digito Pizza, aparecem as pizzarias, se eu digitar Sao Paulo, aparecem todos os dados da minha tabela, já que todas pizzarias, restaurantes, bares são de Sao Paulo. Então preciso filtrar o campo certo para a busca procurar e exibir os dados, e não buscar em todos os campos da tabela.

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.