Solucionado (ver solução)
Solucionado
(ver solução)
5
respostas

Campo de pesquisa chamar categoria e nome.

Olá! Consegui fazer um campo de pesquisa pra procurar produtos da minha tabela, porém ele só pesquisa por nome, eu gostaria que pesquisasse a categoria de uma outra tabela. O nome da coluna da tabela categoria é categoria_nome e dos produtos é nome.

$nome = $_POST["pesquisar"];
if($nome != "") {
$query = "select * from produtos inner join categorias on produtos.categoria_id = categorias.idcatego where nome LIKE '".$nome."%'";
5 respostas

OI Charles, só pra ver se eu entendi bem, a listagem de produtos já pesquisa produtos por nome, mas você quer também uma busca por categoria, é isso? E quer fazer isso usando um campo só de pesquisa onde pode-se pesquisar tanto por categoria quanto por nome do produto?

Isso mesmo. Só tá fazendo de um.

solução!

Se eu entendi corretamente, você quer pesquisar por nome do produto ou nome da categoria, dentro do JOIN que você fez.

Neste caso o seu SQL ficaria assim:

$query = "select * from produtos inner join categorias on produtos.categoria_id = categorias.idcatego where (nome LIKE '%".$nome."%' or categoria_nome LIKE '%".$nome."%')'"

No seu SQL, ele pesquisava o produto onde o começo do nome fosse igual ao valor informado. No meu exemplo, ele procura o valor informado estiver no começo, meio ou fim.

Era isso mesmo que eu queria fazer.

Boa Daniel! Desculpa Charles pela demora! Que bom que já resolveu o problema!

Bons estudos!