Ir para conteúdo

POWERED BY:

Arquivado

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

Cari

Busca interna de dois campos em uma mesma tabela

Recommended Posts

Pessoal!!!Estou começando a trabalhar na área de webdesigners e estou com um probleminha.. não consigo fazer uma busca interna que busque dois campos em uma mesma tabela, por exemplo: o nome e a descrição. Tentei com este código la no recordset: SELECT *FROM weblistaWHERE weblista.nome LIKE "%busca%" OR weblista.razao LIKE "%busca%" e em variables: Name:busca Default Value:1 Type:numeric Runtime Value:$HTTP_POST_VARS['busca'].............. o busca é o nome q eu dei para o texfield q esta dentro do meu formulário........Se alguém tiver alguma idéia de c/ faz... responde.........Até

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tent aisso aki

 

<?php$busca = $_POST['busca'];$sql = "SELECT * FROM weblista WHERE weblista.nome LIKE '%$busca%' OR weblista.razao LIKE '%$busca%'";$query = mysql_query($sql);?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

primeiro, não necessita usar o nomedatabela.nomedocampo quando se usa uma tabela só.

 

você esta usando aspas, use aspas simples.

 

e nessa linha de sql que você passou, ele esta sempre procurando nos campos nome e razao, a palavra "busca", e não a variavel busca..

para ser uma variável, voce precisa colocar o $ na frente.

 

tenta isso:

 

$sql = "SELECT * FROM weblista WHERE nome LIKE '%$busca%' OR razao LIKE '%$busca%'";
ps. tente usar o nome da tabela os nomes dos campos como estão la no banco de dados, diferencie letras maiusculas e minusculas.

 

 

Edit: sobre o post acima, explicando, ele setou a variavel $busca, com o que foi postado no campo "busca", e o comando mysql_query() serve para fazer a consulta.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tent aisso aki

<?php$busca = $_POST['busca'];$sql = "SELECT * FROM weblista WHERE weblista.nome LIKE '%$busca%' OR weblista.razao LIKE '%$busca%'";$query = mysql_query($sql);?>
===============================================================Olha... eu tenho este codigo gerado pelo recordset, asim é q ele está na minha pagina, tentei fazer c/ você havia explicado mas dai não aparece os dados:<?php$busca_lista = "1";if (isset($HTTP_POST_VARS['busca'])) { $busca_lista = (get_magic_quotes_gpc()) ? $HTTP_POST_VARS['busca'] : addslashes($HTTP_POST_VARS['busca']);}mysql_select_db($database_weblista, $weblista);$query_lista = sprintf("SELECT * FROM weblista WHERE weblista.nome LIKE '%%%s%%' OR weblista.razao LIKE '%%%s%%'", $busca_lista,$busca_lista);$lista = mysql_query($query_lista, $weblista) or die(mysql_error());$row_lista = mysql_fetch_assoc($lista);$totalRows_lista = mysql_num_rows($lista);?>Sabe, eu digito tal nome q está cadastrado ele mostra, só q não consigo fazer a paginação. No sql está:SELECT *FROM weblistaWHERE weblista.nome LIKE '%busca%' OR weblista.razao LIKE '%busca%'E em variables: Name:busca Type:numeric Default Value:1 Runtime value:$HTTP_POST_VARS['busca'] só q qando eu clico em ok já da essa mensagem: Missing type for variable:buscaNão sei s fui bem clara, mas s puder m ajudar..... eu desde já agradeço mt...

Compartilhar este post


Link para o post
Compartilhar em outros sites

só q qando eu clico em ok já da essa mensagem: Missing type for variable:busca

ta faltando o $ na frente da palavra busca..esses codigos prontos não são aconselhaveis.. é bem mais pratico e simples você fazer como nós falamos logo ali em cima..

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.