Selecionar duas tabelas em busca

SQL

PHP

16/09/2017

Estou tentando fazer um busca de produtos em duas tabelas, porém não está dando certo.
Tenho duas tabelas, uma de produtos e produto_galeria.
tabela: produto
id, nome, descricao

tabela:produto_galeria
id, produto_id, imagem

Alguém pra em ajudar?

("SELECT * FROM produto WHERE (`nome` LIKE '%".$query."%') OR (`descricao` LIKE '%".$query."%') union all select imagem FROM produto_galeria WHERE produto_id = " .$query['id']."") or die(mysql_error()) ;
Alex Pereira

Alex Pereira

Curtidas 0

Respostas

Mauricio Silva

Mauricio Silva

16/09/2017

pelo o que pude entender de sua busca tente um select desta forma "select p.id, p.nome,p.descricao,g.id,g.produto_id,g.imagem from produto p inner join produto_galeria g on p.id = g.id"
GOSTEI 0
Alex Pereira

Alex Pereira

16/09/2017

Boa tarde Mauricio!
Faltou a outra parte do código.
Na verdade não é um simples select de duas tabelas, e sim um busca em duas tabelas utilizando LIKE e query
("SELECT * FROM produto WHERE (`nome` LIKE '%".$query."%') OR (`descricao` LIKE '%".$query."%') union all select imagem FROM
produto_galeria WHERE produto_id = " .$query['id']."") or die(mysql_error()) ;

Como ficaria o seu select nessa query?

$query = $_GET['query']; // obtém o valor enviado no formulário de pesquisa
$min_length = 3; // você pode definir o comprimento mínimo da consulta se você quiser
if(strlen($query) >= $min_length){ // se o comprimento da consulta for mais ou igual ao comprimento mínimo então
$query = htmlspecialchars($query); // altera caracteres usados ​​em html para seus equivalentes
$query = mysql_real_escape_string($query);// garante que ninguém usa a injeção SQL
$raw_results = mysql_query
GOSTEI 0
POSTAR