Ver Mensaje Individual
  #1 (permalink)  
Antiguo 26/03/2016, 06:03
Avatar de NueveReinas
NueveReinas
 
Fecha de Ingreso: septiembre-2013
Ubicación: No tan Buenos Aires
Mensajes: 1.101
Antigüedad: 10 años, 7 meses
Puntos: 145
Exclamación Consulta "arrastra" resultado

Hola gente!

Estoy tratando de mostrar las visitas (que tengo almacenadas en MySQL) con HighCharts. Estoy usando el modelo "Column with drilldown".

Tengo los meses almacenados en Series, y los días (en el "drilldown") de cada mes los obtengo con PHP junto a las visitas.

Esto sería; meses:



días del mes (en este caso, Marzo) y visitas:



y la tabla de la BBDD:



El problema, como se puede ver, es que los registros no coinciden.

El día 23 hay 3 visitas. El día 24 hay 2. El día 25 hay 1, y el 26 también hay 1.

No entiendo porqué me va "arrastrando" el resultado.

Dejo el código PHP que utilizo para obtener los días de cada mes y las visitas.

Código PHP:
Ver original
  1. function obtenerDias($mes, $year) {
  2.     global $conexion;
  3.     for($d=1; $d<=31; $d++) {
  4.         $time=mktime(12, 0, 0, $mes, $d, $year);          
  5.         if (date('m', $time)==$mes) {
  6.             $dia = date('d', $time);
  7.             $sql_fechas = "SELECT DISTINCT fecha FROM `usuarios` WHERE fecha LIKE '%$dia-$mes-$year%'";
  8.             $consulta_fechas = mysqli_query($conexion, $sql_fechas);
  9.        
  10.             while ($resultados_fechas = mysqli_fetch_array($consulta_fechas)) {
  11.                 $arrayFechas[] = $resultados_fechas['fecha'];
  12.             };
  13.            
  14.             $cantidad = count($arrayFechas);
  15.         };
  16.         $cantidades[] = $cantidad;
  17.         $list[] = "['".$dia."', ".$cantidad."]";
  18.     };
  19.     echo join($list, ', ');
  20. };

De esta manera inserto los datos en el código JS que requiere HighCharts:

Código Javascript:
Ver original
  1. <script>
  2. $(function () {
  3.     // Create the chart
  4.     $('#container').highcharts({
  5.  
  6.     // Los datos...
  7.  
  8.      drilldown: {
  9.             series: [{
  10.                 id: 'visitas_enero',
  11.                 name: 'Enero 2016',
  12.                 data: [<?php echo obtenerDias(1, 2016); ?>]
  13.             }, {
  14.                 id: 'visitas_febrero',
  15.                 name: 'Febrero 2016',
  16.                 data: [
  17.                     <?php echo obtenerDias(2, 2016); ?>
  18.                 ]
  19.             }, {
  20.                 id: 'visitas_marzo',
  21.                 name: 'Marzo 2016',
  22.                 data: [
  23.                     <?php echo obtenerDias(3, 2016); ?>
  24.                 ]
  25.             }//Y sigue el resto del código.

Supongo que el error está en la función de PHP, pero no lo encuentro...

jrasias d ante braso
__________________
¿Te sirvió la respuesta? Deja un +1