Foros del Web » Programando para Internet » PHP »

crear un top de temas iniciados por mes..

Estas en el tema de crear un top de temas iniciados por mes.. en el foro de PHP en Foros del Web. BUenas... soy nuevo por estos lados.. auqn los vengo leyendo desde hace rato.. Mi duda es la siguiente.. tengo una web y me gustaria saber ...
  #1 (permalink)  
Antiguo 03/02/2009, 18:08
 
Fecha de Ingreso: febrero-2009
Mensajes: 3
Antigüedad: 15 años, 2 meses
Puntos: 0
crear un top de temas iniciados por mes..

BUenas... soy nuevo por estos lados.. auqn los vengo leyendo desde hace rato..

Mi duda es la siguiente..

tengo una web y me gustaria saber si se podria hacer algo asi como un top de posteadores.. pero q sea solo de temas iniciados/nuevos temas q se crean mes a mes.

obviamente llevaria consultas mysql.... Me gustaria saber si me pueden dar una mano, como para darme una idea de como empezar por lo menos..

desde ya muchas gracias!!
  #2 (permalink)  
Antiguo 04/02/2009, 20:20
Avatar de destor77  
Fecha de Ingreso: noviembre-2004
Ubicación: Gálvez, Santa Fe, Argentina
Mensajes: 2.654
Antigüedad: 19 años, 5 meses
Puntos: 43
Respuesta: crear un top de temas iniciados por mes..

tenes que armar una consulta sql en la que controles los meses y hacer un count de los post creados, te dejo un link que hay mucho de ejemplo en sql:
http://www.mysql-hispano.org/page.php?id=31&pag=1
  #3 (permalink)  
Antiguo 05/02/2009, 03:01
Avatar de jerkan  
Fecha de Ingreso: septiembre-2005
Mensajes: 1.607
Antigüedad: 18 años, 7 meses
Puntos: 19
Respuesta: crear un top de temas iniciados por mes..

Para hacer eso, simplemente, tienes que guardar la fecha del tema para controlar lo del mes a mes y saber si se trata del primer post del tema o no.

Un saludo
  #4 (permalink)  
Antiguo 05/02/2009, 11:17
 
Fecha de Ingreso: febrero-2009
Mensajes: 3
Antigüedad: 15 años, 2 meses
Puntos: 0
Respuesta: crear un top de temas iniciados por mes..

muchas gracias voy a estar leyendo a ver q pùedo sacar..

saludos!!!
  #5 (permalink)  
Antiguo 06/02/2009, 20:31
Avatar de destor77  
Fecha de Ingreso: noviembre-2004
Ubicación: Gálvez, Santa Fe, Argentina
Mensajes: 2.654
Antigüedad: 19 años, 5 meses
Puntos: 43
Respuesta: crear un top de temas iniciados por mes..

bueno estaba retocando un proyecto que tengo y tenia que hacer lo mismo que vos, asi que me puse a ver como cornos lo hace wordpress, el wp tiene una funcion que se llama wp_get_archives() asi que me puse a analizarla para entender la logica y si bien es una chorrera de codigo no es complicado entenderla, basicamente esa funcion permite mostrar el archivo por meses, años, dias o semanas. En mi caso lo hice por año y mes. En consecuencia mi query queda de la siguiente forma:
Código PHP:
SELECT DISTINCT YEARtime ) AS anio ,
        CASE 
MONTHtime )
        
WHEN 1
        THEN 
'Enero'
        
WHEN 2
        THEN 
'Febero'
        
WHEN 3
        THEN 
'Marzo'
        
WHEN 4
        THEN 
'Abril'
        
WHEN 5
        THEN 
'Mayo'
        
WHEN 6
        THEN 
'Junio'
        
WHEN 7
        THEN 
'Julio'
        
WHEN 8
        THEN 
'Agosto'
        
WHEN 9
        THEN 
'Septiembre'
        
WHEN 10
        THEN 
'Octubre'
        
WHEN 11
        THEN 
'Noviembre'
        
WHEN 12
        THEN 
'Diciembre'
        
END AS mes
        
Month(time) as id_mes,
        
counttime ) AS posts
        FROM nuke_stories
        WHERE topic 
=9
        GROUP BY YEAR
time ) , MONTHtime )
        
ORDER BY time ASC 
solo es cuestion que lo adaptes a los campos y tablas de tu base de datos...

salu2
  #6 (permalink)  
Antiguo 06/02/2009, 21:06
Avatar de argy  
Fecha de Ingreso: octubre-2007
Ubicación: Longitud 75º Latitud 18º Sur
Mensajes: 614
Antigüedad: 16 años, 5 meses
Puntos: 18
Respuesta: crear un top de temas iniciados por mes..

también podría ser que si tu campo es un datetime o timestamp, después de realizar la consulta parsees con $mes=date_parse($row['campo_fecha']), luego pasarlo como indice de un array que hayas creado
algo asi

$month[1]="enero",....$month[12]="diciembre";

$parser_date=date_parse($row['campo_fecha']);

$monthname[(int) $parser_date["month"]];
__________________
Software libre para un mundo libre.

Eventualmente en el foro.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:54.