Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Oi,
Estou fazendo um sistema de busca, gostaria de saber como faço o select para nao importar a ordem.
Por exemplo tenho 2 registros no banco de dados:
"game of thrones"
"of thrones games"
Se o cara digitasse: "of games thrones"
Encontra-se os dois registros.
Estou fazendo assim:
$busca="of game thrones";
$sql = mysql_query("SELECT * FROM encode WHERE campo1 LIKE '%".$busca."%'");
Porém ele não encontra nenhum dos dois.
Como deveria ser feito?
Obrigado.
Não funcionou amigo. :pinch:
Mais alguem sabe como fazer uma busca sem importar a ordem?
Obrigado.
faltou só as aspas simples na query
veja e adapte
$texto = "of games thrones";
$query = "SELECT * FROM `encode` WHERE `campo1` LIKE '%";
$query .= implode("%' or `campo1` like '%",explode(" ", $texto))."%'";
print $query;
busca simples, considerando apenas espaços, para refinar mais a busca para verificar ponto, vírgula ou outros utiliza expressão regular.
não testei