Ver Mensaje Individual
  #4 (permalink)  
Antiguo 18/05/2012, 10:32
ocp001a
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 16 años, 6 meses
Puntos: 528
Respuesta: arreglos en PHP

Pues no veo mucha diferencia con o sin bd....

Podrías hacer una consulta que abarque todo el intervalo de tiempo a consultar para hacer la consulta más rápida y separar ya en el arreglo por fecha.

Suponiendo que tu fecha estuviera como dices, con un número de mes:

Código PHP:
Ver original
  1. $ventas=mysql_query("select numero, monto,fecha from ventas where fecha between 1 and 5 order by fecha asc");//consultamos el intervalo entre el mes uno y 5 (aquí depende del formato real en que tengas la fecha)
  2.  
  3. while($v=mysql_fetch_assoc($ventas)){
  4.     if(isset($venta[$v['numero']][$v['fecha']]))//si ya existe $venta[$v['numero']][$v['fecha']]
  5.              $venta[$v['numero']][$v['fecha']]+=$v['monto'];//le sumamos el monto
  6.     else
  7.              $venta[$v['numero']][$v['fecha']]=$v['monto'];//le asignamos el monto
  8. }


Te quedaría un arreglo ordenado por fecha, numero y monto, y lo podrías desplegar así:
Código PHP:
Ver original
  1. echo "<table><thead><tr><th>Numero</th><h>Ene</th><h>Feb</th><h>Mar</th><h>Abr</th><h>May</th></tr></thead>";//ponemos encabezados
  2. foreach($venta as $numero =>$mat){//recorremos por numero
  3.      echo "<tr><td>$numero</td> ";
  4.      foreach($mat as $mes =>$monto){//recorremos por mes y extraemos el monto del mes
  5.           echo "<td>$monto</td> ";
  6.      }
  7.      echo "</tr>";
  8. }
  9. echo "</table>";