Inquiridor
Grifar palavra de busca

Pergunta
-
Boa Tarde
Estou fazendo uma busca nos dados do meu banco porém quero que na palavra a ser buscada seja grifada.
Segue o codigo
$sql = mysql_query("SELECT * FROM tabela WHERE (dado LIKE '%".$palavra."%') OR (dado LIKE '%".$palavra."%')");
$res11 = mysql_num_rows($sql);
while($linha = mysql_fetch_array($sql)){
echo substr($linha['dado'],0,200)."...<br />";$grifa = "str_replace('$palavra', '<b>$palavra<b>','$sql')";
echo "$grifa";
}
Todas as Respostas
-
Guilherme, este grifo seria um underline ou negrito? Não sei se o sql server, como sgbd, faria isto. Acredito que você deveria programar isto em nível de aplicação. O que vc pode fazer para diferenciar, neste exemplo, é aplicar caixa alta utilizando o UPPER.
Att, Luiz Fernando Lima
- Editado Luiz Fernando BR terça-feira, 4 de junho de 2013 13:14
-
-
Guilherme,
O problema está na tua programação, não é no banco.
O que você está fazendo é atribuir à variável $grifa a string toda... não está executando o substring propriamente dito (que é o que você quer fazer)
Creio que se você procurar em um fórum de php você vai conseguir um retorno mais satisfatório.
Mas eu faria diferente:
Apenas acho que se você concatenar o <b> </b> direto no echo resolveria o que você precisa. (algo como echo '<b>' . $palavra . '</b>')
Espero ter ajudado de alguma forma...
[]'s!
/* Logan Destefani Merazzi - http://www.merazzi.eti.br Se a resposta for útil, por favor, não esqueça de marcá-la como resposta. */
-