Ir para conteúdo
Fórum Script Brasil
  • 0

Roberto-Silva

Pergunta

Olá galera, estou precisando de ajuda para um pequeno projeto em php.

EXEMPLO: 
Na base SQL tem um campo "pergunta" com as seguintes expressões = (o que é o amor, O que é amor, defina amor, fale o que é amor, me fala algo sobre amor)
quando eu pesquiso por uma frase assim: exemplo= ( o que é amor )  não vem de jeito nenhum, mas se eu procuro por ( defina amor ) esse vem! 

Alguém pode me ajudar? Realmente estou há muito tempo tentando e não consigo de jeito nenhum, gratidão pela ajuda!

Segue o busca.php

<(?php

$nomeC=$_GET['nomeCC'];

mysql_select_db($db,$conexao);
$sql = mysql_query("SELECT * FROM cerebro WHERE(perguntas LIKE '%$nomeC%')LIMIT 1");

$count = mysql_num_rows($sql);

if ($count == 0) {    

echo "Não sei sobre  -  $nomeC";

} else {

while ($dados = mysql_fetch_array($sql)) {  
 
echo "".$dados['respostas']." - $nomeC";

    }
}

)?>

Obrigado a todos!

 

2 minutos atrás, Roberto-Silva disse:

Olá galera, estou precisando de ajuda para um pequeno projeto em php.

EXEMPLO: 
Na base SQL tem um campo "pergunta" com as seguintes expressões = (o que é o amor, O que é amor, defina amor, fale o que é amor, me fala algo sobre amor)
quando eu pesquiso por uma frase assim: exemplo= ( o que é amor )  não vem de jeito nenhum, mas se eu procuro por ( defina amor ) esse vem! 

Alguém pode me ajudar? Realmente estou há muito tempo tentando e não consigo de jeito nenhum, gratidão pela ajuda!

Segue o busca.php

<(?php

$nomeC=$_GET['nomeCC'];

mysql_select_db($db,$conexao);
$sql = mysql_query("SELECT * FROM cerebro WHERE(perguntas LIKE '%$nomeC%')LIMIT 1");

$count = mysql_num_rows($sql);

if ($count == 0) {    

echo "Não sei sobre  -  $nomeC";

} else {

while ($dados = mysql_fetch_array($sql)) {  
 
echo "".$dados['respostas']." - $nomeC";

    }
}

)?>

Obrigado a todos!

 

Me esqueci de citar um detalhe... já fiz com explode também não funciona, o que pode ser?
Obrigado!

Editado por Roberto-Silva
Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Se você usar LIKE '%$nomeC%', a busca vai trazer registros que contenham exatamente o valor de $texto em qualquer lugar da string. Ou seja, se pesquisar por "a b c", vai retornar "z a b c z", "a b c z", "z a b c". Mas não vai retornar "abc", nem "bac", "b c a" etc.

Se quiser pesquisar por qualquer uma das palavras digitadas, você precisa usar explode() para separar por espaço e colocar cada elemento em um OR:

... WHERE campo LIKE '%palavra1' OR campo LIKE '%palavra2'

 

PS: funções mysql_* estão obsoletas desde o PHP 5.5  e já foram removidas no PHP 7. Prefira usar MySQLi ou PDO. Veja mais aqui: http://rberaldo.com.br/mysql-obsoleto-php/


 

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...