Foros del Web » Programando para Internet » PHP »

Resultados semanales en vez de totales?

Estas en el tema de Resultados semanales en vez de totales? en el foro de PHP en Foros del Web. Hola a todos, estoy usando un código php para mostrar(en la home del web) los archivos adjuntos con más descargas de mi foro phpbb. Mi ...
  #1 (permalink)  
Antiguo 18/03/2010, 10:03
Avatar de eminem24  
Fecha de Ingreso: julio-2008
Mensajes: 68
Antigüedad: 16 años, 4 meses
Puntos: 0
Pregunta Resultados semanales en vez de totales?

Hola a todos, estoy usando un código php para mostrar(en la home del web) los archivos adjuntos con más descargas de mi foro phpbb.

Mi problema es que me gustaría que los datos se fueran actualizando cada semana. Ahora mismo se contabilizan las descargas totales de los archivos.

Este es el código:
Código PHP:
<?php

$directorio 
"/pagina/foro"// Carpeta donde esta situado el foro.
$partedosfav "&start=0&st=0&sk=t&sd=a&bookmark=1"// Segunda parte de la ruta a favoritos.
$mostrar "10"// Número de mensajes a mostrar.
$caracteres "32"// Caracteres que se mostrarán de cada línea.

$dbhost 'localhost';  // Nombre de host (suele ser 'localhost')
$dbname 'dbname';  // Nombre de la base de datos
$dbuser 'dbuser';  // Usuario de la base de datos
$dbpasswd 'dbpasswd';  // Contraseña ...
$table_prefix 'foro_';  // Prefijo de la tabla

$conexion mysql_connect($dbhost,$dbuser,$dbpasswd);
mysql_select_db($dbname,$conexion);
$consulta "select * from ".$table_prefix."attachments order by download_count desc";
$resultado mysql_query($consulta);
$i 1;
    echo 
"<ul style=\"list-style:decimal; font-weight:bold;\">";
while (
$rows mysql_fetch_array($resultado)) {
if (
$i <= $mostrar) {
$consulta1 "select * from ".$table_prefix."attachments where attach_id='$rows[attach_id]'";
$resultado1 mysql_query($consulta1);
$datosi mysql_fetch_array($resultado1);
$consulta2 "select * from ".$table_prefix."attachments where real_filename='$rows[real_filename]'";
$resultado2 mysql_query($consulta2);
$datosn mysql_fetch_array($resultado2);
$consulta3 "select * from ".$table_prefix."topics where topic_id='$rows[topic_id]'";
$resultado3 mysql_query($consulta3);
$datost mysql_fetch_array($resultado3);
if (
strlen($datost[topic_title]) > $caracteres) {
$datost[topic_title] = substr($datost[topic_title],0,29)."...";  // El límite de carácteres que muestra antes de los puntos
}

if (
$datost[topic_attachment] < "1")
{
$datost[topic_attachment] = "";}
else

   echo 
"<li><a href=\"$directorio/viewtopic.php?t=$rows[topic_id]\" class=\"enlaces-usuarios-tops\">$datost[topic_title]</a></li><div style=\"margin:16px 0 16px 0;\"></div>";
$i++;
}
}
echo 
"</ul><div style=text-align:right;><a href=$directorio>ver más</a></div>";
mysql_free_result($resultado);
mysql_close($conexion);
?>
Como puedo hacer para conseguirlo? gracias anticipadas
  #2 (permalink)  
Antiguo 18/03/2010, 10:22
 
Fecha de Ingreso: marzo-2010
Ubicación: Lima, Perú
Mensajes: 136
Antigüedad: 14 años, 8 meses
Puntos: 2
Respuesta: Resultados semanales en vez de totales?

Has una consulta por los ultimos dias y no de toda la base de datos

usa between en la consulta sql
  #3 (permalink)  
Antiguo 18/03/2010, 11:48
Avatar de eminem24  
Fecha de Ingreso: julio-2008
Mensajes: 68
Antigüedad: 16 años, 4 meses
Puntos: 0
Respuesta: Resultados semanales en vez de totales?

perdona mi ignorancia amigo pero... ¿como debería hacerlo? me interesaría que fuera el resultado siempre de los últimos 7 días.

Yo seguiré aquí investigando y haber si consigo sacarlo. Gracias por la respuesta!
  #4 (permalink)  
Antiguo 18/03/2010, 12:56
Avatar de eminem24  
Fecha de Ingreso: julio-2008
Mensajes: 68
Antigüedad: 16 años, 4 meses
Puntos: 0
Respuesta: Resultados semanales en vez de totales?

De momento he hecho un avance, esta parte de código:

Código PHP:
if ($datost[topic_attachment] < "1"
{
$datost[topic_attachment] = "";} 
else 
me había percatado que esto no hacía nada, en realidad era esta la idea:

Código PHP:
if ($datost[topic_attachment] < "1"
{
$datost[topic_title] = "";} 
else 
Pero lo he quitado porque al ordenarlo por adjuntos, ya no es necesario comprovar si tiene adjunto o no.

Pero tengo esta misma función para mostrar los últimos adjuntos. Ahí si que me hace falta porque lo ordeno por "ultimos temas(topics)", y necesito mostrar sólo los que tengan adjunto. Pero con esa función dejo de mostrar los que no tienen adjunto y entonces no se muestran los 10 de la variable "mostrar".

Necesito saber como hacer que el bucle se cumpla siempre y llegue hasta los 10 que quiero mostrar.(sin tener en cuenta los que ha dejado de mostrar por la condición)

Haber si alguien me puede echar un cablecillo. Muchas gracias
  #5 (permalink)  
Antiguo 19/03/2010, 09:26
 
Fecha de Ingreso: marzo-2010
Ubicación: Lima, Perú
Mensajes: 136
Antigüedad: 14 años, 8 meses
Puntos: 2
Respuesta: Resultados semanales en vez de totales?

Puedes mostrar las estructura de tus tablas

y porque haces un prefix de las tablas???

de todas maneras me gustaria que leyeras la clausula BETWEEN del MySQL

Etiquetas: resultados, totales
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 07:10.