Ver Mensaje Individual
  #3 (permalink)  
Antiguo 06/03/2009, 22:57
gsitperu
 
Fecha de Ingreso: marzo-2009
Mensajes: 39
Antigüedad: 16 años
Puntos: 2
Respuesta: Ayuda con nube de tags

La solucion que a continuacion esta sujeta a que tus tags esten separados por algun caracter; bien lo primero que tienes que hacer es concatenar todos los registros del campo tag

Luego si usas por ejemplo una coma ( , ) separadora enre tags, tendrias que ser un explode de la concatenacion con la coma (,) como separador, luego ordenar de acuerdo a la cantidad que se repite en la variable de tipo array en donde almacenara el tag junto con el numero de repeticiones que se repite en el array, y luego un poco de css y tienes tu nube de tags

te doy algunas pautas con codigo

Código PHP:
<?php
$alltags
=//sera igual a la concatenacion de todas los registros del campo tag
$tags=explode(",",$alltags); 
array_walk($tags,trim($tags)); //eliminas los espacios
$total=count($tags);
$tagsarray_count_values($tags); // devuelve array("prueba"=>2, "chicos"=>2, "chicas"=>1)
ksort($tags); //se ordena atendiendo al &iacute;ndice que tienen.
reset($tags); //Fija el puntero interno de una matriz a su primer elemento 
while (list($clave$valor) = each($tags)){
    
$porcentaje= @round($valor*100/$total); //$por = @round($valor*100/$total,1);
    
echo "<a href='#' title='".$porcentaje."% con ".$valor." Entradas'>";
    echo 
$clave."</a>&nbsp;<span>(".$valor.")</span> -- ";
}
?>