Estou com um problema e gostaria de trocar uma idéia com vcs,
Quando vou fazer uma busca no mysql eu utilizava assim para fazer a busca:
$lista=mysql_query("SELECT * FROM musica WHERE nome_music like '%$busca%' ORDER BY id ");
Mas notei um problema, quando eu digito uma palavra, funciona blz, mas quando eu digito 2 palavras a coisa complica, pois é busca a frase e não a busca separada por palavras.
Ex: $busca="amor odio";
Será buscado apenas as frases que tiverem "amor odio" e serão descartadas as frases que tivere "amor e odio".
Aí tentei isto:
$busc=explode(" ",$nome); $cont = 0; $teste= count($busc); for ( $x=0; $x<$teste; $x++ ) { $cont++; $linha = $busc[$x]; if($teste > $cont){ $busca="nome_music like '%$linha%' and "; }else {$busca="nome_music like '%$linha%'";} } $rime=mysql_query("SELECT * FROM musica WHERE $busca ORDER BY id");
Só que apresenta erro.
Não sei se existe alguma outra forma de fazer uma busca por palavras ou se estou errando alguma coisa, gostaria da ajuda de vocês.