Ir para conteúdo

POWERED BY:

Arquivado

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

Fuxo

Usar variáveis no meio do "SELECT FROM WHERE ORDER BY"

Recommended Posts

[EDITADO][sEGUNDA PARTE DA BUSCA] ENVIANDO VARIÁVEIS PELO LINK

 

 

Bom dia!

 

Estou tentando montar um sisteminha de busca e gostaria de saber como eu coloco uma variável nesse seleção do banco.

 

resumindo seria algo mais ou menos assim:

 

$b_tipo = '22'$b_palavra = 'estroboscópio'$sql = "SELECT campo1, campo2, campo3, FROM tabela WHERE $b_tipo LIKE '$b_palavra' ORDER BY $b_palavra";

 

tem como fazer isso¿

 

obrigado t+

Compartilhar este post


Link para o post
Compartilhar em outros sites

você precisa informar o nome dos campos que você quer pesquisar tipo:

 

$sql = "SELECT campo1, campo2, campo3, FROM tabela WHERE tipo='$b_tipo' AND palavra LIKE '$b_palavra%' ORDER BY $b_palavra";

 

Se não enterder posta ai!

Compartilhar este post


Link para o post
Compartilhar em outros sites

você precisa informar o nome dos campos que você quer pesquisar tipo:

 

$sql = "SELECT campo1, campo2, campo3, FROM tabela WHERE tipo='$b_tipo' AND palavra LIKE '$b_palavra%' ORDER BY $b_palavra";

 

Se não enterder posta ai!

Oi desculpa pela demora pra responder é q tive q parar um pouco esse projeto.

 

tentei isso que você falou mas não consegui pq é assim: o b_tipo pode ter 2 opções (pro_codigo ou *) e a b_palavra vai receber a palavra definida pelo usuário p/ ser pesquisada no item definido no b_tipo.

 

sabe como posso fazer isso, ou pelo que pesquisar¿

Compartilhar este post


Link para o post
Compartilhar em outros sites

to progredindo um poko na sintaxe do código, mas se alguém puder me ajudar eu agradeço

 

fiz assim:

 

$b_tipo = "pro_codigo";$b_palavra = "10";

 

esse deu certinho

$sql = "SELECT pro_foto, pro_codigo, pro_nome, pro_descr, pro_unidade FROM produto WHERE pro_codigo LIKE '%".$b_palavra."%'";

só q qdo tento colocar uma variável no where:

$sql = "SELECT pro_foto, pro_codigo, pro_nome, pro_descr, pro_unidade FROM produto WHERE '%".$b_tipo."%' LIKE '%".$b_palavra."%'";

ele já não consegue achar nenhum resultado na busca, mas também não apresenta erro algum.

 

alguém sabe como resolver¿

 

ps: o b_tipo, tem o valor pro_codigo e neste campo da tabela tem muitos itens com o valor "10" ou seja ele deveria achar umas 10 páginas de resultado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

tente fazer assim

 

$sql = "SELECT pro_foto, pro_codigo, pro_nome, pro_descr, pro_unidade

FROM produto

WHERE $b_tipo LIKE '%$b_palavra.%'";

abraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

opa! tinha tentado isso mas antes de colocar todas aquelas aspas e frescurinhas no b_palavra, mas agora q juntei as frecurinhas nelas e o $b_tipo sem aspas ele funfo certinho.só umais uma coisinha agora, as variáveis eu coloquei na mesma página da busca. ex: uma página com um combo(b_tipo) e um text(b_palavra), como envia o que o usuário colocar nestes campos p/ a página de busca onde elas serão usadas¿

Compartilhar este post


Link para o post
Compartilhar em outros sites

depende o metodo do form que esta utilizando se for POST$combo = $_POST["b_tipo"];$text = $_POST["b_palavra"];não se se era isso que queria..se num for grita ai!!abraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

:huh: boiei um poko

 

vo tentar explicar:

 

tenho o texte.php

nele tem um formulário com 1 list/menu, 1 text field e 1 link

 

qdo clico no link ele define

 

b_tipo= list

b_palavra = text

 

e envia essas 2 variáveis p/ a página busca q vai usar elas aqui:

$sql = "SELECT pro_foto, pro_codigo, pro_nome, pro_descr, pro_unidade FROM produto WHERE $b_tipo LIKE '%".$b_palavra."%'";

estava pesquisando em como fazer isso direto no link tipo <href=teste.com.br/index.php?var1...>, só q não tive muito sucesso, acho q por algum erro na sintaxe q não devo ter endendido direito.

 

alguem sabe como fica as ?,$ e outros simbolos nela¿

Compartilhar este post


Link para o post
Compartilhar em outros sites

vamos por partes...

 

você tem um formulario

 

manda o codigo dele

 

que ai fica mais facil de ir te explicando!!!

 

abraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

então acho q nem se pode dizer q tenho um formulário o q eu tenho é...

 

busca.php

<select name="tipo" class="txt" id="tipo"><option>Palavra chave</option><option selected>Código</option></select><input name="palavra" type="text" class="txt" id="palavra" size="15"><img src="images/pesquisar.gif" width="63" height="18" border="0">

são esses 3 itens

nesta imagem q ta por último vai ter um link, este link deve fazer +ou- isso:

$b_tipo=tipo

$b_palavra=palavra

 

 

 

após as variáveis pegarem o valor q está nos campos ele envia pela url as variáveis q serão usadas na página.

 

 

resultado da busca.php

$sql = "SELECT pro_foto, pro_codigo, pro_nome, pro_descr, pro_unidade FROM produto WHERE "$b_tipo" LIKE '%".$b_palavra."%'";

Agora não sei se enviar pela url é a melhor forma de fazer isso, caso tenha alguma outra sugestão eu aceito tbm.

 

vlw

Compartilhar este post


Link para o post
Compartilhar em outros sites

primeiramente..desculpa pela demora!!!

tinha esquecido o nome do seu topico

 

hehe

 

mas vamos lá

 

codigo

 

 

<?

$b_tipo=$_POST["tipo"];

$b_palavra=$_POST["palavra"];

 

 

$sql = "SELECT pro_foto, pro_codigo, pro_nome, pro_descr, pro_unidade FROM produto WHERE $b_tipo LIKE '%$b_palavra%'";

 

 

echo $b_tipo."<br>";

echo $b_palavra."<br>";

 

echo $sql."<br>";

 

?>

 

 

<html>

<head>

<title>Untitled</title>

</head>

 

<body>

<form id="form" action="busca.php" method="POST">

<select name="tipo" class="txt" id="tipo">

<option value="p">Palavra chave</option>

<option value="c" selected>Código</option>

</select>

<br>

<input name="palavra" type="text" class="txt" id="palavra" size="15">

<input type="submit">

</form>

 

</body>

</html>

 

 

 

vamos ver se você entende!!!

 

 

 

lá em cima

$b_tipo=$_POST["tipo"];$b_palavra=$_POST["palavra"];
isso captura os valores (value) de cada campo

 

 

o valor(value) do seu select é "p" para palavra e "c" para codigo

 

e o que digitar dentro do campo text abaixo será o valor(value) do campo palavra

 

e a consulta sql que esta ai

 

é para testar se esta procurando isso mesmo, se a sintaxe esat correta

 

agora para acabar com tudo basta apenas você substituir os campos pelos seus respectivos valores

 

se pintar duvida, posta ai que eu respondo

 

e se der certo posta também falando que deu certo

 

 

abraço

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.