Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá galera, hoje me deparei com um problema que aparentemente simples mais não estou conseguindo.
Estou fazendo um sitema de busca avançada funcionando a base de filtros.
Tenho uma table aonde faz o relacionamento de tipos:
id_materia | id_tipo
-------------------------
1 9
1 8
1 7
2 9
Preciso trazer só as materias aonde id for 9 e 8 por exemplo:
Query que esta executando:
SELECT n.tipo, n.url_tipo, e.id_evento, e.url_evento, e.nome_oficial, e.data_publicacao, e.breve_descricao, e.data_inicio, e.data_termino, e.hora_inicio, e.hora_termino FROM tb_eventos e LEFT JOIN tb_eventos_tipos t ON e.id_evento = t.id_evento LEFT JOIN tb_eventos_tipos_nomes n ON n.id_tipo = t.id_tipo WHERE (e.situacao = '1') AND e.site NOT LIKE '' AND e.email NOT LIKE '' AND t.id_tipo = '9' AND t.id_tipo = '8' GROUP BY id_evento ORDER BY e.data_publicacao DESC
PHP:
$query = "SELECT n.tipo, n.url_tipo, e.id_evento, e.url_evento, e.nome_oficial, e.data_publicacao, e.breve_descricao, e.data_inicio, e.data_termino, e.hora_inicio, e.hora_termino FROM tb_eventos e LEFT JOIN tb_eventos_tipos t ON e.id_evento = t.id_evento LEFT JOIN tb_eventos_tipos_nomes n ON n.id_tipo = t.id_tipo WHERE e.situacao = '1' ";
if($_POST["site"]) $query .= "AND e.site NOT LIKE '' ";
if($_POST["email"]) $query .= "AND e.email NOT LIKE '' ";
if($_POST["telefone"]) $query .= "AND e.telefone NOT LIKE '' ";
if($_POST["entrada"]) $query .= "AND e.entrada = '" . $_POST["entrada"] . "' ";
if($_POST["abrangencia"]) $query .= "AND e.abrangencia = '" . $_POST["abrangencia"] . "' ";
if($_POST["periodicidade"]) $query .= "AND e.periodicidade = '" . $_POST["periodicidade"] . "' ";
if($_POST["acesso"]) $query .= "AND e.acesso = '" . $_POST["acesso"] . "' ";
if($_POST["tipos"]){
for($a = 0; $a < count($_POST["tipos"]); $a++){
$id_tipo = $_POST["tipos"][$a];
$query .= "AND t.id_tipo = '" . $id_tipo . "' ";
}
}
$query .= "GROUP BY id_evento ORDER BY e.data_publicacao DESC";
Deve ser algo simples, mas não estou conseguindo encontrar o problema...
Desde já agradeço.
Carregando comentários...