Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Pessoal, seguinte eu to com um problema numa busca que eu to fazendo.
Essa busca gera um array para depois criar o sql como abaixo:
// SELECAO DA PESQUISA
$where = Array();
if ($_REQUEST['textoBusca'] != 0) // 0 = Todos; 1=venda; 2=aluguel $textoBusca = mysql_real_escape_string($_REQUEST['textoBusca']);
$where[]= "par_palavras_chaves=".$textoBusca;
$qs .= "&textoBusca=".$textoBusca;
}
if ($_REQUEST['buscaCat'] != 0) // 0 = Todos $buscaCat = mysql_real_escape_string($_REQUEST['buscaCat']);
if(is_numeric($buscaCat) === FALSE){
die("Falta ID da Categoria");
}
$where[]= "par_id_categoria = ".$buscaCat;
$qs .= "&buscaCat=".$buscaCat;
}
if ($_REQUEST['buscaCid'] != 0) // 0 = Todos $buscaCid = mysql_real_escape_string($_REQUEST['buscaCid']);
if(is_numeric($buscaCid) === FALSE){
die("Falta ID de Cidade");
}
$where[]= "par_id_cidade=".$buscaCid;
$qs .= "&buscaCid=".$buscaCid;
}
if (count($where) > 0){
$where = " WHERE ".implode(" and ",$where );
} else
$where = "";
$rowConsulta = mysql_query("SELECT * FROM parceiros ".$where);
A busca funciona até um certo ponto, o meu problema está no campo categoria. Nesse campo eu salvo as categorias selecionadas no banco de dados num campo text separados por ',' exemplo: 1,2,3,13,21 etc.
O que acontece é que quando eu seleciono a categoria 1 na busca ela me retorna os registros que contem 1,13,21.
Isso acontece porque na busca eu pesquiso com LIKE '%categoria%' por exemplo. mas eu preciso fazer com que ele "leia" o campo categoria e me mostre somente os resultados que tem a categoria 1 e não todas que "contem" 1 como 21 ou 13 por exemplo. Alguém tem uma idéia de como pode ser feito?
Desde já agradeço
Carregando comentários...