Si Puedo, una utopia

Saltar al contenido
Si Puedo

Seleccionar los registros más repetidos [MySQL]

Publicado el Jueves 2 Octubre 2008

Este más que un post, es para acordarme como lo he hecho ;)

Para Doble Pletina estoy creando un modulo (buscacintas <- ¿muy original no?) para hacer busquedas en youtube y poder crearte nodos con ellas (lo liberaré si a alguien le interesa ;) ) El funcionamiento, por ahora, es correcto, bueno aún tengo algunos problemas con la paginación y con la duración de los videos que estoy intentando solucionar :P
Cada vez le estoy añadiendo má funcionalidades y esta última me parece que se puede usar en otros sitios:
Primero, crear el bloque

1
2
3
$block_content ='';
 
$block['subject'] = 'Canciones más grabadas';

Lo principal, la llamada a MySQL que hace todo ;)

1
$llamada = db_query("SELECT *, COUNT(*) as num FROM content_type_cancion GROUP BY field_youtube_value ORDER BY num DESC LIMIT 0 , 3");

content_type_cancion es un CCK que almacena las canciones y uno de los campos, esta claro, es el id de youtube llamado field_youtube_value

Ahora solo no queda recorrer $llamada y tomar los valores necesarios para crear el contenido del bloque y listo, ordenados por el video de youtube más repetido ;)

1
2
3
4
5
6
7
8
9
10
11
$id = 0;
while ($canciones = db_fetch_object($llamada)) {
$items[] = $canciones;
$salida.='&lt;div class="repe"&gt;';
$titulo = db_result(db_query("SELECT title FROM {node} WHERE nid = '%s'",$items[$id]-&gt;vid));
$salida.='&lt;a href="/node/'.$items[$id]-&gt;vid.'" title="'.$titulo.'"&gt;';
$salida.='&lt;img align="left" width="54" hspace="7" height="40" src="http://img.youtube.com/vi/'.$items[$id]-&gt;field_youtube_value.'/2.jpg"/&gt;'.$titulo.'&lt;/a&gt;&lt;/div&gt;';
$id++;
}
$block['content'] = $salida;
return $block;

Dejar un comentario