dfonte Posted December 5, 2006 Report Share Posted December 5, 2006 alguém conhece algum código php que registra as palavras mais procuradas em um sistema de busca para que depois eu possa mostrar quais são as 50 palavras mais procuradas e quantas vezes elas foram digitadas no sistema de busca.agradeço aos que me ajudarem. Quote Link to comment Share on other sites More sharing options...
0 Beraldo Posted December 5, 2006 Report Share Posted December 5, 2006 Nunca vi um script assim pronto, mas, se quiser fazer um, podemos ajudar. :)[]'s Quote Link to comment Share on other sites More sharing options...
0 searching_ Posted December 5, 2006 Report Share Posted December 5, 2006 Acho que se armazenar todas as palavras digitadas nas buscas em um arquivo.txt e separá-las por um caracter, dá pra fazer uma busca de quantas vezes a mesma palavra aparece no arquivo... depois criar uma rotina de ranking... Ixi! é um trabalhão.... agent podia tentar desenvolver isso por aqui... Quote Link to comment Share on other sites More sharing options...
0 dfonte Posted December 6, 2006 Author Report Share Posted December 6, 2006 eu estava pensando em criar uma nova tabela no banco de dados só para armazenar essas palavras mas não sei se vai dar certo Quote Link to comment Share on other sites More sharing options...
0 searching_ Posted December 6, 2006 Report Share Posted December 6, 2006 Acho que se for feito com BD vai ficar pesado pcausa das consultas... Quote Link to comment Share on other sites More sharing options...
0 dfonte Posted December 6, 2006 Author Report Share Posted December 6, 2006 você poderia me ajudar a fazer neste esquema que você falou de gravar no arquivo.txt?vlw Quote Link to comment Share on other sites More sharing options...
0 Beraldo Posted December 6, 2006 Report Share Posted December 6, 2006 Usando um aquivo txt, uma maneira de se fazer é usando as seguintes funções:file()array_count_values()Qualquer dúvida, pode postar![]'s Quote Link to comment Share on other sites More sharing options...
0 searching_ Posted December 6, 2006 Report Share Posted December 6, 2006 Bem ... nesse sentido você vai criar um arquivo.txt que receberá os valores digitados pelo usuário também, junto com sua consulta (busca). Daê você vai criar uma rotina de inclusão...Vamos chamar o arquivo de palavraChave.txt.<? $palavra = $_POST["busca"]."\n"; // pegando o valor digitado e quebrando uma linha $fp = fopen("palavraChave.txt",a); // abrindo o arquivo $escrever = fwrite($fp, $palavra); // escrevendo o valor digitado fclose($fp); // fechando o arquivo ?> Bem esse arquivo você vai incluir na página da pesquisa para cada vez que a busca for realizada, seja inserido os valores da busca no arquivo txt vo pensar +... ---- IH! Percebi que o array_count_values() retorna os valores e as posiçoes do array, mas não retorna por ordem de maior numero de valores... pelo que vi é aleatório... tipo: $array = array(1,1,2,1,1,3,1,1); var_dump(array_count_values($array)); /* retorna assim array(3){ [2] => 1 [3] => 1 [1] => 6 } */ Se tivesse como retornar em ordem pela maior quantidade de repetições por valores, seria mais fácil.... Quote Link to comment Share on other sites More sharing options...
0 mbleonardo Posted December 6, 2006 Report Share Posted December 6, 2006 Se tivesse como retornar em ordem pela maior quantidade de repetições por valores, seria mais fácil....Este problema é facil de ser resolvido, só utilizar o arsort() com flag SORT_NUMERIC: $array = array_count_values(array(1,1,2,1,1,3,1,1)); arsort($array, SORT_NUMERIC); $array = array_reverse($array); var_dump($array); Quote Link to comment Share on other sites More sharing options...
0 searching_ Posted December 8, 2006 Report Share Posted December 8, 2006 Então agora é só transformar o arquivo em um array...<?php $arquivo = file("palavraChave.txt"); $array = array_count_values($arquivo); arsort($array, SORT_NUMERIC); $array = array_reverse($array); ?> E exibir as primeiras posições... <? echo "Os 5 Termos Mais Buscas São:<br>"; $retorno = array_slice($array,0,5); foreach($retorno as $colocacao=>$valor){ echo $colocacao."º Lugar --> ."$valor."<br>\n"; } ?> Acho que isso resolve... o que acham?? Quote Link to comment Share on other sites More sharing options...
0 Dracom Posted December 9, 2006 Report Share Posted December 9, 2006 olha cara nunca fiz um codigo assim mas concerteza é possivel Quote Link to comment Share on other sites More sharing options...
0 dfonte Posted December 11, 2006 Author Report Share Posted December 11, 2006 já consegui fazer e está funcionando que nem eu queria.vlw a ajuda. Quote Link to comment Share on other sites More sharing options...
Question
dfonte
alguém conhece algum código php que registra as palavras mais procuradas em um sistema de busca para que depois eu possa mostrar quais são as 50 palavras mais procuradas e quantas vezes elas foram digitadas no sistema de busca.
agradeço aos que me ajudarem.
Link to comment
Share on other sites
11 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.