PUBLICIDADE
Este código tem nota
6

Autor

brunogross

Bruno Gross

membro deste dezembro de 2006

Tags

Compartilhe e guarde

  • Rec6
  • StumbleUpon
  • ueba
  • linkk
  • dihitt
  • linkloko
  • linkto
  • Technorati
  • Simpy
  • del.icio.us
  • Faves: Fave It!

PUBLICIDADE

Enquete

Que tipo de conexão com a internet você utiliza?

Gerador de Tag Clouds


Esquema simples e funcional para gerar as chamadas TAG CLOUDS, agrupando as palavras mais comum em pesquisas do seu site, classificando as pelo tamanho, de acordo com sua relevância.

Semelhante a existente no site Technorati.com
<?php
//2007 - Bruno Gross - www.brunogross.com
// Primeiro Execute sua conexão a base de dados da forma que achar conveniente
//faremos uma busca em uma base de dados fictícia. No exemplo considere-se MYSQL
$sSql = "SELECT tags, COUNT(id) AS quantidade
  FROM tabela
  GROUP BY tags
  ORDER BY tags ASC";
$resultado = mysql_query($sSql);

// agora pegamos a resposta de nosso sql e transformamo em um array, que tem como índice as tags que usaremos e como valor as quantidades
while ($row = mysql_fetch_array($quantidade)) {
    $tags[$row['tag']] = $row['quantidade'];
	//por exemplo poderíamos montar um array de IDs se necessário da mesma forma $id[$row['tag']] = = $row['id'];
}
// Aqui setamos os tamanhos das fontes, usando porcentagens
$max = 250; // máximo %
$min = 100; // mínimo %
// pegamos o maior e o menor número de vezes que as palavras aparecem pela quantidade no array
$max_qtd = max(array_values($tags));
$min_qtd = min(array_values($tags));
// achamos a variação nos valores
$variacao = $max_qtd - $min_qtd;
if (0 == $variacao) // pra evitar divisão por 0
    $variacao = 1;
// determinamos os incrementos nos tamanhos das fontes
// sempre respeitando a quantidade de vezes que a tag aparecer
$passo = ($max - $min)/($variacao);
//Navegando pelo array
foreach ($tags as $key => $value) {
    // calculando o tamanho da fonte para o CSS
    $tam = $min + (($value - $min_qtd) * $passo);
    // No lugar de # vc coloca o caminho caso queira abrir algum caminho com a tag
    // Agora divirta-se e formate a saída da forma que achar conveniente
    echo '<a href="#" style="font-size: '.$tam.'%">';
    echo $key.'</a> ';
	//caso tivéssemos montado nosso array de ID poderíamos fazer assim
	//$id[key] lhe daria o ID da tag atual por exemplo
}
?>

Sim   Não   Este código foi útil para você?
NotaComentário
6
ulisses comentou em 4/7/2007

Chique

eae cara muito bom esse script servio pra mim.
Regras:
Os comentários seguem as seguintes regras:
  • Todos os comentários são enviados por membros cadastrados no site.
  • A pontuação de comentários de conteúdo do próprio membro não serão computados.
  • Os comentários serão pré-aprovados, porém a equipe do site revisará o conteúdo de todos os comentários podendo ser invalidados (inclusive a pontuação).
  • Os comentários precisam ter, obrigatóriamente, coerência sobre o conteúdo que será comentado.
  • O membro que atingir 5 comentários invalidados não poderá mais comentar dentro do site. Com isso o membro não poderá mais ganhar pontos com comentários.
  • Há um limite de 10 comentários por dia para cada membro.
  • Qualquer comentário após ter sido publicado poderá ser retirado através da opção ( denunciar)

Comente

     (ainda não tem cadastro? clique aqui!)


Máximo de 30 caracteres

Máximo de 255 caracteres
 

R&W Consulting - Soluções Web Hospedagem UOL HOST PagSeguro - solução para pagamentos online
© 2006-2009 R&W Informática Ltda. - Todos os direitos reservados.