Jump to content


Photo

Ordenar Busca


  • Faça o login para participar
3 replies to this topic

#1 CSFInfo

CSFInfo

    Normal

  • Usuários
  • 81 posts
  • Sexo:Não informado

Posted 12/09/2005, 23:01

Como faco para ordenar o resultado da busca pela qtde de palavras encontradas no texto

ex:

Se eu buscar por "Site busca" ele ordenar os textos que possuem o maior número de palavras com "site" e "busca" no texto.

Estou fazendo assim atualmente:

//Cria variáveis para cada palavra
$palavras = explode(" ", $palavra);

foreach($palavras as $valor){
  // Busca por cada palavra em cada campo
  $where .= " nome LIKE '%$valor%' OR ";
  $where .= " descricao LIKE '%$valor%' OR";
  
  // Ordena os Registros por cada palavra
  $ordem .= " nome LIKE '$valor%' DESC,";
  $ordem .= " descricao LIKE '$valor%' DESC,";
}

$buscar = mysql_query("SELECT * FROM busca_urls WHERE $where ORDER BY $ordem LIMIT $inicio, $resultado"); 


Ficaria assim:

O WHERE

nome LIKE '%site%' OR descricao LIKE '%site%'OR nome LIKE '%busca%' OR descricao LIKE '%busca%'

O ORDER

nome LIKE 'site%' DESC, descricao LIKE 'site%' DESC, nome LIKE 'busca%' DESC, descricao LIKE 'busca%' DESC

Edição feita por: CSFInfo, 12/09/2005, 23:02.


#2 Stormbringer

Stormbringer

    I'd love to stay with you all

  • Ex-Admins
  • 2927 posts
  • Sexo:Não informado
  • Localidade:Goiânia - GO
  • Interesses:Atualmente: pesquisa e desenvolvimento de web-games

Posted 13/09/2005, 09:22

vc jah conseguiu, foi isso? heheh

eu nao sabia dessa possibilidade no order by... mais uma pra coleção de topicos favoritos do Storm ;)

๑۩۞۩๑Let the Carnage Begin!!๑۩۞۩๑


#3 CSFInfo

CSFInfo

    Normal

  • Usuários
  • 81 posts
  • Sexo:Não informado

Posted 13/09/2005, 17:19

Valeu pelo "favoritos" realmente demorou mais ficou bom.

Esta seia a forma que estou utilizando o resultado ordenaria pelo nome descricao...

Eu queria que listasse de acordo com o número de ocorrências das palavras buscadas no nome e descricao.

Ex: caso o texto(nome,descricao) tenha mais de uma palavra 'busca' e/ou 'site' conforme exemplo listaria em primeiro e assim sucessivamente.

#4 H3NR!QU3

H3NR!QU3

    Progamador PHP!

  • Usuários
  • 1032 posts
  • Sexo:Não informado
  • Localidade:cuiaba MT
  • Interesses:programação... PHP,JAVA,C++ ,c,c# asp, asp.net e delph

Posted 13/09/2005, 18:25

é

eu jah fiz isto uma vez...

O oder by tem muitas outras coisas legais (y)

mais o meu que ue fiz foi um pouco mais simples (y)

realmente isso e extremamente legal (y)




0 user(s) are reading this topic

0 membro(s), 0 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq